From 8b3009e0f1cc8c964a69866d921f2dca08267288 Mon Sep 17 00:00:00 2001 From: syhlx Date: Sat, 6 Jan 2024 01:35:06 +0100 Subject: [PATCH 1/6] [plugin.video.piped] 1.0.0 --- plugin.video.piped/LICENSE.txt | 661 ++++++++++++++++++ plugin.video.piped/README.md | 45 ++ plugin.video.piped/addon.xml | 25 + plugin.video.piped/default.py | 343 +++++++++ plugin.video.piped/lib/__init__.py | 0 plugin.video.piped/lib/utils.py | 21 + plugin.video.piped/resources/__init__.py | 0 plugin.video.piped/resources/fanart.jpg | Bin 0 -> 226069 bytes plugin.video.piped/resources/icon.png | Bin 0 -> 33496 bytes .../resource.language.en_gb/strings.po | 187 +++++ plugin.video.piped/resources/settings.xml | 30 + plugin.video.piped/service.py | 202 ++++++ 12 files changed, 1514 insertions(+) create mode 100644 plugin.video.piped/LICENSE.txt create mode 100644 plugin.video.piped/README.md create mode 100644 plugin.video.piped/addon.xml create mode 100644 plugin.video.piped/default.py create mode 100644 plugin.video.piped/lib/__init__.py create mode 100644 plugin.video.piped/lib/utils.py create mode 100644 plugin.video.piped/resources/__init__.py create mode 100644 plugin.video.piped/resources/fanart.jpg create mode 100644 plugin.video.piped/resources/icon.png create mode 100644 plugin.video.piped/resources/language/resource.language.en_gb/strings.po create mode 100644 plugin.video.piped/resources/settings.xml create mode 100644 plugin.video.piped/service.py diff --git a/plugin.video.piped/LICENSE.txt b/plugin.video.piped/LICENSE.txt new file mode 100644 index 0000000000..0ad25db4bd --- /dev/null +++ b/plugin.video.piped/LICENSE.txt @@ -0,0 +1,661 @@ + GNU AFFERO GENERAL PUBLIC LICENSE + Version 3, 19 November 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU Affero General Public License is a free, copyleft license for +software and other kinds of works, specifically designed to ensure +cooperation with the community in the case of network server software. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +our General Public Licenses are intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. + + 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 +them 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. + + Developers that use our General Public Licenses protect your rights +with two steps: (1) assert copyright on the software, and (2) offer +you this License which gives you legal permission to copy, distribute +and/or modify the software. + + A secondary benefit of defending all users' freedom is that +improvements made in alternate versions of the program, if they +receive widespread use, become available for other developers to +incorporate. Many developers of free software are heartened and +encouraged by the resulting cooperation. However, in the case of +software used on network servers, this result may fail to come about. +The GNU General Public License permits making a modified version and +letting the public access it on a server without ever releasing its +source code to the public. + + The GNU Affero General Public License is designed specifically to +ensure that, in such cases, the modified source code becomes available +to the community. It requires the operator of a network server to +provide the source code of the modified version running there to the +users of that server. Therefore, public use of a modified version, on +a publicly accessible server, gives the public access to the source +code of the modified version. + + An older license, called the Affero General Public License and +published by Affero, was designed to accomplish similar goals. This is +a different license, not a version of the Affero GPL, but Affero has +released a new version of the Affero GPL which permits relicensing under +this license. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU Affero General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey 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; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If 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 convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Remote Network Interaction; Use with the GNU General Public License. + + Notwithstanding any other provision of this License, if you modify the +Program, your modified version must prominently offer all users +interacting with it remotely through a computer network (if your version +supports such interaction) an opportunity to receive the Corresponding +Source of your version by providing access to the Corresponding Source +from a network server at no charge, through some standard or customary +means of facilitating copying of software. This Corresponding Source +shall include the Corresponding Source for any work covered by version 3 +of the GNU General Public License that is incorporated pursuant to the +following paragraph. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the work with which it is combined will remain governed by version +3 of the GNU General Public License. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU Affero 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 that a certain numbered version of the GNU Affero General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU Affero General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU Affero General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + 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. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +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. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + 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 +state 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 Affero 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 Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If your software can interact with users remotely through a computer +network, you should also make sure that it provides a way for users to +get its source. For example, if your program is a web application, its +interface could display a "Source" link that leads users to an archive +of the code. There are many ways you could offer source, and different +solutions will be better for different programs; see section 13 for the +specific requirements. + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU AGPL, see +. diff --git a/plugin.video.piped/README.md b/plugin.video.piped/README.md new file mode 100644 index 0000000000..9ccb287052 --- /dev/null +++ b/plugin.video.piped/README.md @@ -0,0 +1,45 @@ +# Piped Addon for Kodi + +[![AGPL v3](https://shields.io/badge/License-AGPL%20v3-blue.svg)](https://www.gnu.org/licenses/agpl-3.0.en.html) + +An addon which allows you to access any Piped instance, login and manage your playlists and watch history. + +## Features: + +**Basic Features** + +- [x] Watch videos (obviously!) +- [x] Search for videos, channels and playlists +- [x] Multi-language audio +- [x] Subtitles +- [x] Pick favourite your Piped instance +- [x] Compatible with Sponsor Block +- [ ] Watch live streams (can be watched once finished, for now) + +**User Features (logged in to a Piped instance)** + +- [x] Personal Feed +- [x] Subscriptions +- [x] Playlists +- [x] Optional: Watch History (use a playlist as watch history) +- [x] Optional: Hide already watched videos in each section + +## Watch history + +To enable the watch history: After logging in from the settings, go to your playlists and choose "**Set as watch history**" from the context menu on the playlist you wish to use as your watch history. + +## Piped instances + +The official Piped instance is set by default. + +But, you can also choose your favourite Piped instance or host your own and change it in the settings. + +- List of public Piped Instances: [Public Piped instances](https://github.com/TeamPiped/Piped/wiki/Instances) +- Host your own instance: [Self-Hosting](https://docs.piped.video/docs/self-hosting/) + +## Disclaimer + +This plugin is neither affiliated with nor endorsed by TeamPiped. + +# License +Piped Addon for Kodi is licensed under the AGPL v3 License. See [LICENSE](LICENSE) for details. diff --git a/plugin.video.piped/addon.xml b/plugin.video.piped/addon.xml new file mode 100644 index 0000000000..1fd56e1e35 --- /dev/null +++ b/plugin.video.piped/addon.xml @@ -0,0 +1,25 @@ + + + + + + + + + + video + + + Piped Addon for Kodi + An addon which allows you to access any Piped instance, login and manage your playlists and watch history + This plugin is neither affiliated with nor endorsed by TeamPiped + all + GPL-3.0-only + https://github.com/syhlx/plugin.video.piped + None + + resources/icon.png + resources/fanart.jpg + + + diff --git a/plugin.video.piped/default.py b/plugin.video.piped/default.py new file mode 100644 index 0000000000..ea420a2ef7 --- /dev/null +++ b/plugin.video.piped/default.py @@ -0,0 +1,343 @@ +import sys +import requests +import time +import json +from urllib.parse import quote + +import xbmc +import xbmcgui +import xbmcplugin +import xbmcaddon +import xbmcvfs + +from lib.utils import get_component, human_format + +addon = xbmcaddon.Addon() +profile_path: str = xbmcvfs.translatePath(xbmcaddon.Addon().getAddonInfo("profile")) + +addon_url: str = f"plugin://{addon.getAddonInfo('id')}" +if __name__ == "__main__": + addon_handle: int = int(sys.argv[1]) + + xbmcplugin.setContent(addon_handle, 'videos') + +instance: str = addon.getSettingString('instance') + +def get_auth_token() -> str: + if not addon.getSettingBool('use_login'): return '' + + if len(addon.getSettingString('auth_token')) > 0: + return addon.getSettingString('auth_token') + else: + error_msg: str = '' + try: + result = requests.post(f'{instance}/login', json = dict( + username = addon.getSettingString('username'), + password = addon.getSettingString('password') + )) + + error_msg = result.text + + auth_token = result.json()['token'] + addon.setSettingString('auth_token', auth_token) + + return auth_token + except: + xbmcgui.Dialog().ok(addon.getLocalizedString(30016), error_msg) + return '' + + +def home() -> None: + folders: list = list() + if addon.getSettingBool('use_login'): + folders.append(('feed', addon.getLocalizedString(30001))) + folders.append(('subscriptions', addon.getLocalizedString(30002))) + folders.append(('playlists',addon.getLocalizedString(30003))) + if addon.getSettingBool('watch_history_enable') and len(addon.getSettingString('watch_history_playlist')) > 0: + folders.append(('watch_history', addon.getLocalizedString(30004))) + + folders.append(('trending', addon.getLocalizedString(30005))) + folders.append(('search_select', addon.getLocalizedString(30006))) + folders.append(('settings', addon.getLocalizedString(30007))) + + for folder in folders: + xbmcplugin.addDirectoryItem(handle=addon_handle, url=f"{addon_url}/{folder[0]}", listitem=xbmcgui.ListItem(folder[1]), isFolder=True) + + xbmcplugin.endOfDirectory(addon_handle) + +def watch(video_id: str) -> None: + listitem = xbmcgui.ListItem( + path=f'http://localhost:{addon.getSettingInt("http_port")}/watch?v={video_id}', + ) + listitem.setProperty('inputstream', 'inputstream.adaptive') + listitem.setProperty('inputstream.adaptive.manifest_type', 'mpd') + listitem.setProperty('piped_video_id', video_id) + + xbmcplugin.setResolvedUrl(handle=addon_handle, succeeded=True, listitem=listitem) + +def list_videos(videos: list, hide_watched: bool=False, nextpage: str='') -> None: + history: list = list() + watch_history_enabled: bool = addon.getSettingBool('watch_history_enable') and len(addon.getSettingString('watch_history_playlist')) > 0 + if watch_history_enabled: + try: + with open(f'{profile_path}/watch_history.json', 'r') as f: + history = json.load(f) + except: + pass + + for video in videos: + plugin_url: str = f"{addon_url}{video['url'].replace('?v=', '/')}" + video_id: str = get_component(video['url'])['params']['v'] + if hide_watched and video_id in history: continue + if 'uploadedDate' in video and video['uploadedDate'] is not None: date: str = video['uploadedDate'] + elif video['uploaded'] > 0: date: str = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(video['uploaded'] / 1000)) + else: date: str = '' + info: str = f"{video['title']}\n\n{video['uploaderName']}\n\n" + if video['views'] >=0: info += f"{addon.getLocalizedString(30008)}: {human_format(video['views'])}\n" + if len(date) > 2: info += f"{addon.getLocalizedString(30009)}: {date}" + listitem = xbmcgui.ListItem(label=video['title'], path=plugin_url) + listitem.setProperty('isplayable', 'true') + listitem.setArt(dict( + thumb = video['thumbnail'], + fanart = video['uploaderAvatar'] + )) + + tag = listitem.getVideoInfoTag() + tag.setTitle(video['title']) + tag.setPlot(info) + tag.setDuration(video['duration']) + tag.setFilenameAndPath(plugin_url) + tag.setPath(plugin_url) + + context_menu_items: list = [(addon.getLocalizedString(30010), f"RunAddon({addon.getAddonInfo('id')}, {video['uploaderUrl']})")] + if watch_history_enabled: + if video_id in history: + context_menu_items.append((addon.getLocalizedString(30011), f"RunPlugin({addon_url}/mark_as_unwatched?id={video_id})")) + else: + context_menu_items.append((addon.getLocalizedString(30012), f"RunPlugin({addon_url}/mark_as_watched?id={video_id})")) + listitem.addContextMenuItems(context_menu_items, replaceItems=True) + + xbmcplugin.addDirectoryItem(addon_handle, plugin_url, listitem, False) + + if len(nextpage) > 0: + xbmcplugin.addDirectoryItem(handle=addon_handle, url=f"{addon_url}/{nextpage}", listitem=xbmcgui.ListItem(addon.getLocalizedString(30017)), isFolder=True) + + xbmcplugin.endOfDirectory(addon_handle) + +def feed() -> None: + instance: str = addon.getSettingString('instance') + auth_token = get_auth_token() + + videos = requests.get(f'{instance}/feed?authToken={auth_token}').json() + + list_videos(videos, addon.getSettingBool('watch_history_hide_watched_feed')) + +def list_channels(channels: list, nextpage: str='') -> None: + for channel in channels: + info: str = '' + if 'shortDescription' in channel and channel['shortDescription'] is not None: info += channel['shortDescription'] + "\n\n" + elif 'description' in channel and channel['description'] is not None: info += channel['description'] + "\n\n" + + listitem = xbmcgui.ListItem(channel['name']) + + if 'avatar' in channel: + listitem.setArt(dict( + thumb = channel['avatar'] + )) + elif 'thumbnail' in channel: + listitem.setArt(dict( + thumb = channel['thumbnail'] + )) + + tag = listitem.getVideoInfoTag() + tag.setTitle(channel['name']) + tag.setPlot(info) + + xbmcplugin.addDirectoryItem(addon_handle, f"{addon_url}{channel['url']}", listitem, True) + + if len(nextpage) > 0: + xbmcplugin.addDirectoryItem(handle=addon_handle, url=f"{addon_url}/{nextpage}", listitem=xbmcgui.ListItem(addon.getLocalizedString(30017)), isFolder=True) + + xbmcplugin.endOfDirectory(addon_handle) + +def subscriptions() -> None: + instance: str = addon.getSettingString('instance') + auth_token = get_auth_token() + + list_channels(requests.get(f'{instance}/subscriptions', headers={'Authorization': auth_token}).json()) + +def list_playlists(playlists: list, nextpage: str='') -> None: + for playlist in playlists: + info: str = '' + if 'shortDescription' in playlist and playlist['shortDescription'] is not None: info += playlist['shortDescription'] + "\n\n" + elif 'description' in playlist and playlist['description'] is not None: info += playlist['description'] + "\n\n" + info += f"{addon.getLocalizedString(30018)}: {playlist['videos']}" + + if 'id' not in playlist: + playlist['id'] = get_component(playlist['url'])['params']['list'] + + listitem = xbmcgui.ListItem(playlist['name']) + listitem.setArt(dict( + thumb = playlist['thumbnail'] + )) + + tag = listitem.getVideoInfoTag() + tag.setTitle(playlist['name']) + tag.setPlot(info) + + listitem.addContextMenuItems([(addon.getLocalizedString(30013), f"RunPlugin({addon_url}/set_watch_history?id={playlist['id']})")]) + xbmcplugin.addDirectoryItem(addon_handle, f"{addon_url}/playlist?id={playlist['id']}", listitem, True) + + if len(nextpage) > 0: + xbmcplugin.addDirectoryItem(handle=addon_handle, url=f"{addon_url}/{nextpage}", listitem=xbmcgui.ListItem(addon.getLocalizedString(30017)), isFolder=True) + + xbmcplugin.endOfDirectory(addon_handle) + +def playlists() -> None: + instance: str = addon.getSettingString('instance') + auth_token = get_auth_token() + + list_playlists(requests.get(f'{instance}/user/playlists', headers={'Authorization': auth_token}).json()) + +def playlist(playlist_id: str, hide_watched=None) -> None: + instance: str = addon.getSettingString('instance') + + playlist_info = requests.get(f'{instance}/playlists/{playlist_id}').json() + hide_watched: bool = hide_watched if hide_watched is not None else addon.getSettingBool('watch_history_hide_watched_playlists') + + if playlist_info['videos'] > 0: list_videos(playlist_info['relatedStreams'], hide_watched) + else: xbmcgui.Dialog().ok(addon.getLocalizedString(30014), addon.getLocalizedString(30015)) + +def watch_history() -> None: + playlist(addon.getSettingString('watch_history_playlist'), False) + +def set_watch_history(playlist_id: str) -> None: + addon.setSettingBool('watch_history_enable', True) + addon.setSettingString('watch_history_playlist', playlist_id) + +def mark_as_watched(video_id: str) -> None: + instance: str = addon.getSettingString('instance') + auth_token: str = get_auth_token() + playlist_id: str = addon.getSettingString('watch_history_playlist') + + videos = requests.get(f'{instance}/playlists/{playlist_id}').json()['relatedStreams'] + index: int = -1 + + for i in range(len(videos)): + if videos[i]['url'] == f"/watch?v={video_id}": + index = i + break + + if index == -1: + requests.post(f'{instance}/user/playlists/add', json = dict( + playlistId = playlist_id, + videoId = video_id + ), headers={'Authorization': auth_token}) + + try: + with open(f'{profile_path}/watch_history.json', 'r') as f: + history = json.load(f) + history.insert(0, video_id) + + with open(f'{profile_path}/watch_history.json', 'w+') as f: + json.dump(history, f) + except: + pass + +def mark_as_unwatched(video_id: str) -> None: + instance: str = addon.getSettingString('instance') + auth_token: str = get_auth_token() + playlist_id: str = addon.getSettingString('watch_history_playlist') + + videos: list = requests.get(f'{instance}/playlists/{playlist_id}').json()['relatedStreams'] + + for i in range(len(videos)): + if videos[i]['url'] == f"/watch?v={video_id}": + requests.post(f'{instance}/user/playlists/remove', json = dict( + playlistId = playlist_id, + index = i + ), headers={'Authorization': auth_token}) + break + + try: + with open(f'{profile_path}/watch_history.json', 'r') as f: + history = json.load(f) + history.remove(video_id) + + with open(f'{profile_path}/watch_history.json', 'w+') as f: + json.dump(history, f) + except: + pass + +def channel(channel_id: str, nextpage: str="") -> None: + instance: str = addon.getSettingString('instance') + + url: str = f'{instance}/nextpage/channel/{channel_id}?nextpage={quote(nextpage)}' if len(nextpage) > 0 else f'{instance}/channel/{channel_id}' + + response: dict = requests.get(url).json() + + component_nextpage: str = '' + if 'nextpage' in response and isinstance(response["nextpage"], str): component_nextpage = f'/channel/{channel_id}?nextpage={quote(response["nextpage"])}' + + list_videos(response['relatedStreams'], addon.getSettingBool('watch_history_hide_watched_channels'), component_nextpage) + +def trending() -> None: + instance: str = addon.getSettingString('instance') + + videos = requests.get(f'{instance}/trending?region=US').json() + + list_videos(videos, addon.getSettingBool('watch_history_hide_watched_trending')) + +def search(search_filter: str, query: str='', nextpage: str='') -> None: + instance: str = addon.getSettingString('instance') + + window = xbmcgui.Window(10000) + + if not len(query) > 0: + query = window.getProperty('PipedLastSearch') if len(window.getProperty('PipedLastSearch')) > 0 else xbmcgui.Dialog().input(addon.getLocalizedString(30006)) + window.setProperty('PipedLastSearch', query) + + if not len(query) > 0: return + + url: str = f'{instance}/nextpage/search?nextpage={quote(nextpage)}&' if len(nextpage) > 0 else f'{instance}/search?' + url += f'q={quote(query)}&filter={search_filter}' + + response: dict = requests.get(url).json() + + component_nextpage: str = '' + if 'nextpage' in response and isinstance(response["nextpage"], str): component_nextpage = f'/search?nextpage={quote(response["nextpage"])}&q={quote(query)}&search_filter={search_filter}' + + if search_filter == 'videos': + list_videos(response['items'], addon.getSettingBool('watch_history_hide_watched_search'), component_nextpage) + elif search_filter == 'channels': + list_channels(response['items'], component_nextpage) + elif search_filter == 'playlists': + list_playlists(response['items'], component_nextpage) + +def search_select(): + window = xbmcgui.Window(10000) + window.setProperty('PipedLastSearch', '') + + xbmcplugin.addDirectoryItem(handle=addon_handle, url=f"{addon_url}/search?search_filter=videos", listitem=xbmcgui.ListItem(addon.getLocalizedString(30018)), isFolder=True) + xbmcplugin.addDirectoryItem(handle=addon_handle, url=f"{addon_url}/search?search_filter=channels", listitem=xbmcgui.ListItem(addon.getLocalizedString(30019)), isFolder=True) + xbmcplugin.addDirectoryItem(handle=addon_handle, url=f"{addon_url}/search?search_filter=playlists", listitem=xbmcgui.ListItem(addon.getLocalizedString(30003)), isFolder=True) + xbmcplugin.endOfDirectory(addon_handle) + +if __name__ == "__main__": + component: dict = get_component(sys.argv[0] + sys.argv[2]) + + if component['path'] == '/': home() + elif component['path'] == '/feed': feed() + elif component['path'] == '/settings': addon.openSettings() + elif component['path'] == '/subscriptions': subscriptions() + elif component['path'] == '/playlists': playlists() + elif component['path'] == '/search_select': search_select() + elif component['path'] == '/search': search(component['params']['search_filter'], component['params']['q'] if 'q' in component['params'] else '', component['params']['nextpage'] if 'nextpage' in component['params'] else '') + elif component['path'] == '/trending': trending() + elif component['path'] == '/playlist': playlist(component['params']['id']) + elif component['path'] == '/watch_history': watch_history() + elif component['path'] == '/set_watch_history': set_watch_history(component['params']['id']) + elif component['path'] == '/mark_as_watched': mark_as_watched(component['params']['id']) + elif component['path'] == '/mark_as_unwatched': mark_as_unwatched(component['params']['id']) + elif component['path'][:6] == '/watch': watch(component['path'][7:]) + elif component['path'][:8] == '/channel': channel(component['path'][9:], component['params']['nextpage'] if 'nextpage' in component['params'] else '') diff --git a/plugin.video.piped/lib/__init__.py b/plugin.video.piped/lib/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/plugin.video.piped/lib/utils.py b/plugin.video.piped/lib/utils.py new file mode 100644 index 0000000000..61edaf1da6 --- /dev/null +++ b/plugin.video.piped/lib/utils.py @@ -0,0 +1,21 @@ +from urllib.parse import urlparse, parse_qsl + +def get_component(uri: str) -> dict: + parsed_uri = urlparse(uri) + params: dict = dict() + + for param in parse_qsl(parsed_uri.query): + params[param[0]] = param[1] + + return dict( + path = parsed_uri.path, + params = params + ) + +def human_format(num): + num = float('{:.3g}'.format(num)) + magnitude = 0 + while abs(num) >= 1000: + magnitude += 1 + num /= 1000.0 + return '{} {}'.format('{:f}'.format(num).rstrip('0').rstrip('.'), ['', 'K', 'M', 'B', 'T'][magnitude]) diff --git a/plugin.video.piped/resources/__init__.py b/plugin.video.piped/resources/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/plugin.video.piped/resources/fanart.jpg b/plugin.video.piped/resources/fanart.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0db87e8f31021e4a4ff00492e8dd195dfae6e691 GIT binary patch literal 226069 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 W`pa88jnJmi)5m_W4CHwHsQG^)tknSk literal 0 HcmV?d00001 diff --git a/plugin.video.piped/resources/icon.png b/plugin.video.piped/resources/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..2b382ceaff8bfbe21f6436f26e57c19dfbce1a81 GIT binary patch literal 33496 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 literal 0 HcmV?d00001 diff --git a/plugin.video.piped/resources/language/resource.language.en_gb/strings.po b/plugin.video.piped/resources/language/resource.language.en_gb/strings.po new file mode 100644 index 0000000000..439e080170 --- /dev/null +++ b/plugin.video.piped/resources/language/resource.language.en_gb/strings.po @@ -0,0 +1,187 @@ +# Kodi Media Center language file +# Addon Name: Piped +# Addon id: plugin.video.piped +# Addon Provider: Syhlx +msgid "" +msgstr "" +"Project-Id-Version: Piped\n" +"POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: Syhlx\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: en\n" +"Plural-Forms: nplurals=2; plural=(n != 1)\n" + +msgctxt "#30000" +msgid "Piped" +msgstr "" + +msgctxt "#30001" +msgid "Feed" +msgstr "" + +msgctxt "#30002" +msgid "Subscriptions" +msgstr "" + +msgctxt "#30003" +msgid "Playlists" +msgstr "" + +msgctxt "#30004" +msgid "Watch History" +msgstr "" + +msgctxt "#30005" +msgid "Trending" +msgstr "" + +msgctxt "#30006" +msgid "Search" +msgstr "" + +msgctxt "#30007" +msgid "Settings" +msgstr "" + +msgctxt "#30008" +msgid "Views" +msgstr "" + +msgctxt "#30009" +msgid "Published" +msgstr "" + +msgctxt "#30010" +msgid "Go to channel" +msgstr "" + +msgctxt "#30011" +msgid "Remove from watch history" +msgstr "" + +msgctxt "#30012" +msgid "Add to watch history" +msgstr "" + +msgctxt "#30013" +msgid "Set as watch history" +msgstr "" + +msgctxt "#30014" +msgid "Playlist" +msgstr "" + +msgctxt "#30015" +msgid "This playlist is empty" +msgstr "" + +msgctxt "#30016" +msgid "Error" +msgstr "" + +msgctxt "#30017" +msgid "Next" +msgstr "" + +msgctxt "#30018" +msgid "Videos" +msgstr "" + +msgctxt "#30019" +msgid "Channels" +msgstr "" + +msgctxt "#3001" +msgid "" +msgstr "" + +msgctxt "#30100" +msgid "Instance" +msgstr "" + +msgctxt "#30101" +msgid "Instance (API)" +msgstr "" + +msgctxt "#30102" +msgid "Login" +msgstr "" + +msgctxt "#30103" +msgid "Username" +msgstr "" + +msgctxt "#30104" +msgid "Password" +msgstr "" + +msgctxt "#30200" +msgid "History" +msgstr "" + +msgctxt "#30201" +msgid "Use playlist as watch history" +msgstr "" + +msgctxt "#30202" +msgid "Playlist ID" +msgstr "" + +msgctxt "#30203" +msgid "Hide watched videos in Feed" +msgstr "" + +msgctxt "#30204" +msgid "Hide watched videos in Channels" +msgstr "" + +msgctxt "#30205" +msgid "Hide watched videos in Playlists" +msgstr "" + +msgctxt "#30206" +msgid "Hide watched videos in Trending" +msgstr "" + +msgctxt "#30207" +msgid "Hide watched videos in Search" +msgstr "" + +msgctxt "#30208" +msgid "Refresh interval (min)" +msgstr "" + +msgctxt "#30300" +msgid "Service" +msgstr "" + +msgctxt "#30301" +msgid "Use random HTTP Port (Recommended)" +msgstr "" + +msgctxt "#30302" +msgid "HTTP Port" +msgstr "" + +msgctxt "#30400" +msgid "Media" +msgstr "" + +msgctxt "#30401" +msgid "Prefer orignal audio" +msgstr "" + +msgctxt "#30402" +msgid "Prefer Kodi's user interface language" +msgstr "" + +msgctxt "#30403" +msgid "Custom language" +msgstr "" + +msgctxt "#30404" +msgid "Load subtitles" +msgstr "" diff --git a/plugin.video.piped/resources/settings.xml b/plugin.video.piped/resources/settings.xml new file mode 100644 index 0000000000..74e84fe72b --- /dev/null +++ b/plugin.video.piped/resources/settings.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/plugin.video.piped/service.py b/plugin.video.piped/service.py new file mode 100644 index 0000000000..a40339a981 --- /dev/null +++ b/plugin.video.piped/service.py @@ -0,0 +1,202 @@ +from http.server import SimpleHTTPRequestHandler +import socketserver +import requests +import json +from urllib.parse import parse_qsl +import threading + +import xbmc +import xbmcaddon +import xbmcvfs + +from lib.utils import get_component +from default import mark_as_watched + +addon = xbmcaddon.Addon() +profile_path: str = xbmcvfs.translatePath(xbmcaddon.Addon().getAddonInfo("profile")) + +instance: str = addon.getSettingString('instance') + +def generate_dash(video_id: str) -> str: + resp = requests.get(f'{instance}/streams/{video_id}').json() + + streams: dict = dict( + audio = dict(), + video = dict(), + ) + + default_audio: dict = dict() + prefer_original_lang: bool = addon.getSettingBool("audio_prefer_original_lang") + preferred_lang: str = addon.getSettingString("audio_custom_lang") if addon.getSettingString("audio_custom_lang") and not addon.getSettingBool("audio_prefer_kodi_lang") else xbmc.getLanguage(xbmc.ISO_639_1) + + for stream in resp["audioStreams"] + resp["videoStreams"]: + media_lang = stream["audioTrackLocale"] if stream["audioTrackLocale"] is not None else 'null' + media_type, media_format = stream["mimeType"].split("/") + if media_type in ['audio', 'video'] and "googlevideo" in stream["url"]: + if media_type == 'audio' and ((prefer_original_lang and stream["audioTrackType"] == "ORIGINAL") or (not prefer_original_lang and media_lang[:2] == preferred_lang)): + if not default_audio.__contains__(media_lang): default_audio[media_lang]: dict = dict() + if not default_audio[media_lang].__contains__(media_format): default_audio[media_lang][media_format]: list = list() + default_audio[media_lang][media_format].append(stream) + else: + if not streams[media_type].__contains__(media_lang): streams[media_type][media_lang]: dict = dict() + if not streams[media_type][media_lang].__contains__(media_format): streams[media_type][media_lang][media_format]: list = list() + streams[media_type][media_lang][media_format].append(stream) + + streams['audio'] = default_audio | streams['audio'] + + mpd: str = '' + mpd += f'' + + mpd += '' + + if addon.getSettingBool("subtitles_load"): + for subtitle in resp["subtitles"]: + mpd += f'' + mpd += '' + mpd += f'' + mpd += f'{subtitle["url"].replace("&", "&")}' + mpd += '' + + for stream_type in ['audio', 'video']: + for stream_lang in streams[stream_type]: + for stream_format in streams[stream_type][stream_lang]: + stream_xml: str = '' + for stream in streams[stream_type][stream_lang][stream_format]: + if stream["initEnd"] > 0: + stream_xml += f'' + stream_xml += f'{stream["url"].replace("&", "&")}' + stream_xml += f'' + stream_xml += f'' + stream_xml += '' + + if len(stream_xml) > 0: + mpd += f'' + mpd += stream_xml + mpd += f'' + + mpd += '' + + return mpd + + +class HttpRequestHandler(SimpleHTTPRequestHandler): + def do_GET(self): + if self.path.startswith('/watch?v='): + self.send_response(200) + self.send_header('Content type', 'application/dash+xml') + self.end_headers() + self.wfile.write(generate_dash(parse_qsl(self.path)[0][1]).encode('utf-8')) + else: + self.send_error(404, "File not Found") + + def do_HEAD(self): + if self.path.startswith('/watch?v='): + self.send_response(200) + self.send_header('Content type', 'application/dash+xml') + self.end_headers() + else: + self.send_error(404, "File not Found") + + return + +def HttpService(): + http_port: int = 0 if addon.getSettingBool('http_port_random') else addon.getSettingInt('http_port') + with socketserver.TCPServer(('127.0.0.1', http_port), HttpRequestHandler) as httpd: + addon.setSettingInt('http_port', httpd.socket.getsockname()[1]) + httpd.serve_forever() + +class Scheduler(threading.Thread): + def __init__(self): + super(Scheduler, self).__init__() + self._stop_event = threading.Event() + + def run(self): + while not self._stop_event.is_set(): + if addon.getSettingBool('watch_history_enable') and len(addon.getSettingString('watch_history_playlist')) > 0: + history: list = list() + history_playlist: list = requests.get(f"{instance}/playlists/{addon.getSettingString('watch_history_playlist')}").json()['relatedStreams'] + + for watched in history_playlist: + history.append(get_component(watched['url'])['params']['v']) + + history.reverse() + + if len(history) > 0: + with open(f'{profile_path}/watch_history.json', 'w+') as f: + json.dump(history, f) + + self._stop_event.wait(addon.getSettingInt('watch_history_refresh') * 60_000) + + def stop(self, timeout=1): + self._stop_event.set() + self.join(timeout) + +class Player(xbmc.Player): + def __init__(self): + super(xbmc.Player, self).__init__() + + self.video_id = None + + def watchHistoryEnabled(self): + return addon.getSettingBool('watch_history_enable') and len(addon.getSettingString('watch_history_playlist')) > 0 + + def markAsWatched(self): + if self.watchHistoryEnabled() and self.video_id is not None: + mark_as_watched(self.video_id) + self.video_id = None + + def onPlayBackStarted(self): + video_id = self.getPlayingItem().getProperty('piped_video_id') + self.video_id = video_id if isinstance(video_id, str) and len(video_id) > 5 else None + + while self.video_id is not None: + try: + time_remaining: float = self.getTotalTime() - self.getTime() + if time_remaining > 0. and time_remaining < 5.: self.markAsWatched() + except: + pass + + xbmc.sleep(500) + + def onPlayBackEnded(self): + self.markAsWatched() + + def onPlayBackStopped(self): + self.video_id = None + + def onPlayBackSeek(self, time, seekOffset): + try: + if time + seekOffset > (self.getTotalTime() - 5) * 1000: + self.markAsWatched() + except: + pass + +class Service(xbmc.Monitor): + def __init__(self): + httpservice = threading.Thread(target=HttpService) + scheduler = Scheduler() + httpservice.daemon = True + scheduler.daemon = True + player = Player() + player.isPlaying() + + while not self.abortRequested(): + if self.waitForAbort(5): + while scheduler.is_alive(): + scheduler.stop() + xbmc.sleep(200) + break + + try: + if not httpservice.is_alive(): httpservice.start() + if not scheduler.is_alive(): scheduler.start() + except: + pass + +if __name__ == '__main__': + Service() From 915785824d032ca820926a57739da674d9ee5903 Mon Sep 17 00:00:00 2001 From: syhlx Date: Mon, 8 Jan 2024 07:02:22 +0100 Subject: [PATCH 2/6] Correct license in metadata --- plugin.video.piped/addon.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugin.video.piped/addon.xml b/plugin.video.piped/addon.xml index 1fd56e1e35..8e10c7ba78 100644 --- a/plugin.video.piped/addon.xml +++ b/plugin.video.piped/addon.xml @@ -14,7 +14,7 @@ An addon which allows you to access any Piped instance, login and manage your playlists and watch history This plugin is neither affiliated with nor endorsed by TeamPiped all - GPL-3.0-only + AGPL-3.0-only https://github.com/syhlx/plugin.video.piped None From adad1246578437c6f2e3d7dd1528e1427f5c9685 Mon Sep 17 00:00:00 2001 From: syhlx Date: Thu, 18 Jan 2024 20:07:45 +0100 Subject: [PATCH 3/6] Background colours in icon and fanart --- plugin.video.piped/resources/fanart.jpg | Bin 226069 -> 203100 bytes plugin.video.piped/resources/icon.png | Bin 33496 -> 40968 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/plugin.video.piped/resources/fanart.jpg b/plugin.video.piped/resources/fanart.jpg index 0db87e8f31021e4a4ff00492e8dd195dfae6e691..975cbc315b10f54b8f948aca2fa8abb1c49c14b5 100644 GIT binary patch literal 203100 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%0AvMVO5=A9QdS32 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 literal 226069 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 W`pa88jnJmi)5m_W4CHwHsQG^)tknSk diff --git a/plugin.video.piped/resources/icon.png b/plugin.video.piped/resources/icon.png index 2b382ceaff8bfbe21f6436f26e57c19dfbce1a81..93c4e1c895781dc5aedf59d4481e0d6804e92772 100644 GIT binary patch literal 40968 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 L%ngh6okRZvLvj1R literal 33496 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 From a47d0d56b1846f9077c1c148ad1db8652f5e3d26 Mon Sep 17 00:00:00 2001 From: syhlx Date: Thu, 18 Jan 2024 20:07:57 +0100 Subject: [PATCH 4/6] Decreased required versions of dependencies --- plugin.video.piped/addon.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugin.video.piped/addon.xml b/plugin.video.piped/addon.xml index 8e10c7ba78..5954ea1534 100644 --- a/plugin.video.piped/addon.xml +++ b/plugin.video.piped/addon.xml @@ -2,8 +2,8 @@ - - + + From c54cb189117d5461a780a2a11948958875430ba7 Mon Sep 17 00:00:00 2001 From: syhlx Date: Thu, 18 Jan 2024 20:08:12 +0100 Subject: [PATCH 5/6] Refactoring --- plugin.video.piped/README.md | 4 +- plugin.video.piped/default.py | 343 +----------------- plugin.video.piped/lib/authentication.py | 26 ++ plugin.video.piped/lib/dash.py | 70 ++++ plugin.video.piped/lib/history.py | 69 ++++ plugin.video.piped/lib/sections.py | 285 +++++++++++++++ plugin.video.piped/lib/services/__init__.py | 0 plugin.video.piped/lib/services/entrypoint.py | 28 ++ plugin.video.piped/lib/services/httpserver.py | 32 ++ plugin.video.piped/lib/services/player.py | 44 +++ plugin.video.piped/lib/services/scheduler.py | 33 ++ plugin.video.piped/lib/utils.py | 2 +- plugin.video.piped/service.py | 203 +---------- 13 files changed, 596 insertions(+), 543 deletions(-) create mode 100644 plugin.video.piped/lib/authentication.py create mode 100644 plugin.video.piped/lib/dash.py create mode 100644 plugin.video.piped/lib/history.py create mode 100644 plugin.video.piped/lib/sections.py create mode 100644 plugin.video.piped/lib/services/__init__.py create mode 100644 plugin.video.piped/lib/services/entrypoint.py create mode 100644 plugin.video.piped/lib/services/httpserver.py create mode 100644 plugin.video.piped/lib/services/player.py create mode 100644 plugin.video.piped/lib/services/scheduler.py diff --git a/plugin.video.piped/README.md b/plugin.video.piped/README.md index 9ccb287052..6a4c38ca52 100644 --- a/plugin.video.piped/README.md +++ b/plugin.video.piped/README.md @@ -16,7 +16,7 @@ An addon which allows you to access any Piped instance, login and manage your pl - [x] Compatible with Sponsor Block - [ ] Watch live streams (can be watched once finished, for now) -**User Features (logged in to a Piped instance)** +**Account Features (logged in to a Piped instance)** - [x] Personal Feed - [x] Subscriptions @@ -42,4 +42,4 @@ But, you can also choose your favourite Piped instance or host your own and chan This plugin is neither affiliated with nor endorsed by TeamPiped. # License -Piped Addon for Kodi is licensed under the AGPL v3 License. See [LICENSE](LICENSE) for details. +Piped Addon for Kodi is licensed under the AGPL v3 License. See [LICENSE](LICENSE.txt) for details. \ No newline at end of file diff --git a/plugin.video.piped/default.py b/plugin.video.piped/default.py index ea420a2ef7..fcde30434b 100644 --- a/plugin.video.piped/default.py +++ b/plugin.video.piped/default.py @@ -1,343 +1,8 @@ import sys -import requests -import time -import json -from urllib.parse import quote +from xbmcplugin import setContent -import xbmc -import xbmcgui -import xbmcplugin -import xbmcaddon -import xbmcvfs - -from lib.utils import get_component, human_format - -addon = xbmcaddon.Addon() -profile_path: str = xbmcvfs.translatePath(xbmcaddon.Addon().getAddonInfo("profile")) - -addon_url: str = f"plugin://{addon.getAddonInfo('id')}" -if __name__ == "__main__": - addon_handle: int = int(sys.argv[1]) - - xbmcplugin.setContent(addon_handle, 'videos') - -instance: str = addon.getSettingString('instance') - -def get_auth_token() -> str: - if not addon.getSettingBool('use_login'): return '' - - if len(addon.getSettingString('auth_token')) > 0: - return addon.getSettingString('auth_token') - else: - error_msg: str = '' - try: - result = requests.post(f'{instance}/login', json = dict( - username = addon.getSettingString('username'), - password = addon.getSettingString('password') - )) - - error_msg = result.text - - auth_token = result.json()['token'] - addon.setSettingString('auth_token', auth_token) - - return auth_token - except: - xbmcgui.Dialog().ok(addon.getLocalizedString(30016), error_msg) - return '' - - -def home() -> None: - folders: list = list() - if addon.getSettingBool('use_login'): - folders.append(('feed', addon.getLocalizedString(30001))) - folders.append(('subscriptions', addon.getLocalizedString(30002))) - folders.append(('playlists',addon.getLocalizedString(30003))) - if addon.getSettingBool('watch_history_enable') and len(addon.getSettingString('watch_history_playlist')) > 0: - folders.append(('watch_history', addon.getLocalizedString(30004))) +from lib.sections import router - folders.append(('trending', addon.getLocalizedString(30005))) - folders.append(('search_select', addon.getLocalizedString(30006))) - folders.append(('settings', addon.getLocalizedString(30007))) - - for folder in folders: - xbmcplugin.addDirectoryItem(handle=addon_handle, url=f"{addon_url}/{folder[0]}", listitem=xbmcgui.ListItem(folder[1]), isFolder=True) - - xbmcplugin.endOfDirectory(addon_handle) - -def watch(video_id: str) -> None: - listitem = xbmcgui.ListItem( - path=f'http://localhost:{addon.getSettingInt("http_port")}/watch?v={video_id}', - ) - listitem.setProperty('inputstream', 'inputstream.adaptive') - listitem.setProperty('inputstream.adaptive.manifest_type', 'mpd') - listitem.setProperty('piped_video_id', video_id) - - xbmcplugin.setResolvedUrl(handle=addon_handle, succeeded=True, listitem=listitem) - -def list_videos(videos: list, hide_watched: bool=False, nextpage: str='') -> None: - history: list = list() - watch_history_enabled: bool = addon.getSettingBool('watch_history_enable') and len(addon.getSettingString('watch_history_playlist')) > 0 - if watch_history_enabled: - try: - with open(f'{profile_path}/watch_history.json', 'r') as f: - history = json.load(f) - except: - pass - - for video in videos: - plugin_url: str = f"{addon_url}{video['url'].replace('?v=', '/')}" - video_id: str = get_component(video['url'])['params']['v'] - if hide_watched and video_id in history: continue - if 'uploadedDate' in video and video['uploadedDate'] is not None: date: str = video['uploadedDate'] - elif video['uploaded'] > 0: date: str = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(video['uploaded'] / 1000)) - else: date: str = '' - info: str = f"{video['title']}\n\n{video['uploaderName']}\n\n" - if video['views'] >=0: info += f"{addon.getLocalizedString(30008)}: {human_format(video['views'])}\n" - if len(date) > 2: info += f"{addon.getLocalizedString(30009)}: {date}" - listitem = xbmcgui.ListItem(label=video['title'], path=plugin_url) - listitem.setProperty('isplayable', 'true') - listitem.setArt(dict( - thumb = video['thumbnail'], - fanart = video['uploaderAvatar'] - )) - - tag = listitem.getVideoInfoTag() - tag.setTitle(video['title']) - tag.setPlot(info) - tag.setDuration(video['duration']) - tag.setFilenameAndPath(plugin_url) - tag.setPath(plugin_url) - - context_menu_items: list = [(addon.getLocalizedString(30010), f"RunAddon({addon.getAddonInfo('id')}, {video['uploaderUrl']})")] - if watch_history_enabled: - if video_id in history: - context_menu_items.append((addon.getLocalizedString(30011), f"RunPlugin({addon_url}/mark_as_unwatched?id={video_id})")) - else: - context_menu_items.append((addon.getLocalizedString(30012), f"RunPlugin({addon_url}/mark_as_watched?id={video_id})")) - listitem.addContextMenuItems(context_menu_items, replaceItems=True) - - xbmcplugin.addDirectoryItem(addon_handle, plugin_url, listitem, False) - - if len(nextpage) > 0: - xbmcplugin.addDirectoryItem(handle=addon_handle, url=f"{addon_url}/{nextpage}", listitem=xbmcgui.ListItem(addon.getLocalizedString(30017)), isFolder=True) - - xbmcplugin.endOfDirectory(addon_handle) - -def feed() -> None: - instance: str = addon.getSettingString('instance') - auth_token = get_auth_token() - - videos = requests.get(f'{instance}/feed?authToken={auth_token}').json() - - list_videos(videos, addon.getSettingBool('watch_history_hide_watched_feed')) - -def list_channels(channels: list, nextpage: str='') -> None: - for channel in channels: - info: str = '' - if 'shortDescription' in channel and channel['shortDescription'] is not None: info += channel['shortDescription'] + "\n\n" - elif 'description' in channel and channel['description'] is not None: info += channel['description'] + "\n\n" - - listitem = xbmcgui.ListItem(channel['name']) - - if 'avatar' in channel: - listitem.setArt(dict( - thumb = channel['avatar'] - )) - elif 'thumbnail' in channel: - listitem.setArt(dict( - thumb = channel['thumbnail'] - )) - - tag = listitem.getVideoInfoTag() - tag.setTitle(channel['name']) - tag.setPlot(info) - - xbmcplugin.addDirectoryItem(addon_handle, f"{addon_url}{channel['url']}", listitem, True) - - if len(nextpage) > 0: - xbmcplugin.addDirectoryItem(handle=addon_handle, url=f"{addon_url}/{nextpage}", listitem=xbmcgui.ListItem(addon.getLocalizedString(30017)), isFolder=True) - - xbmcplugin.endOfDirectory(addon_handle) - -def subscriptions() -> None: - instance: str = addon.getSettingString('instance') - auth_token = get_auth_token() - - list_channels(requests.get(f'{instance}/subscriptions', headers={'Authorization': auth_token}).json()) - -def list_playlists(playlists: list, nextpage: str='') -> None: - for playlist in playlists: - info: str = '' - if 'shortDescription' in playlist and playlist['shortDescription'] is not None: info += playlist['shortDescription'] + "\n\n" - elif 'description' in playlist and playlist['description'] is not None: info += playlist['description'] + "\n\n" - info += f"{addon.getLocalizedString(30018)}: {playlist['videos']}" - - if 'id' not in playlist: - playlist['id'] = get_component(playlist['url'])['params']['list'] - - listitem = xbmcgui.ListItem(playlist['name']) - listitem.setArt(dict( - thumb = playlist['thumbnail'] - )) - - tag = listitem.getVideoInfoTag() - tag.setTitle(playlist['name']) - tag.setPlot(info) - - listitem.addContextMenuItems([(addon.getLocalizedString(30013), f"RunPlugin({addon_url}/set_watch_history?id={playlist['id']})")]) - xbmcplugin.addDirectoryItem(addon_handle, f"{addon_url}/playlist?id={playlist['id']}", listitem, True) - - if len(nextpage) > 0: - xbmcplugin.addDirectoryItem(handle=addon_handle, url=f"{addon_url}/{nextpage}", listitem=xbmcgui.ListItem(addon.getLocalizedString(30017)), isFolder=True) - - xbmcplugin.endOfDirectory(addon_handle) - -def playlists() -> None: - instance: str = addon.getSettingString('instance') - auth_token = get_auth_token() - - list_playlists(requests.get(f'{instance}/user/playlists', headers={'Authorization': auth_token}).json()) - -def playlist(playlist_id: str, hide_watched=None) -> None: - instance: str = addon.getSettingString('instance') - - playlist_info = requests.get(f'{instance}/playlists/{playlist_id}').json() - hide_watched: bool = hide_watched if hide_watched is not None else addon.getSettingBool('watch_history_hide_watched_playlists') - - if playlist_info['videos'] > 0: list_videos(playlist_info['relatedStreams'], hide_watched) - else: xbmcgui.Dialog().ok(addon.getLocalizedString(30014), addon.getLocalizedString(30015)) - -def watch_history() -> None: - playlist(addon.getSettingString('watch_history_playlist'), False) - -def set_watch_history(playlist_id: str) -> None: - addon.setSettingBool('watch_history_enable', True) - addon.setSettingString('watch_history_playlist', playlist_id) - -def mark_as_watched(video_id: str) -> None: - instance: str = addon.getSettingString('instance') - auth_token: str = get_auth_token() - playlist_id: str = addon.getSettingString('watch_history_playlist') - - videos = requests.get(f'{instance}/playlists/{playlist_id}').json()['relatedStreams'] - index: int = -1 - - for i in range(len(videos)): - if videos[i]['url'] == f"/watch?v={video_id}": - index = i - break - - if index == -1: - requests.post(f'{instance}/user/playlists/add', json = dict( - playlistId = playlist_id, - videoId = video_id - ), headers={'Authorization': auth_token}) - - try: - with open(f'{profile_path}/watch_history.json', 'r') as f: - history = json.load(f) - history.insert(0, video_id) - - with open(f'{profile_path}/watch_history.json', 'w+') as f: - json.dump(history, f) - except: - pass - -def mark_as_unwatched(video_id: str) -> None: - instance: str = addon.getSettingString('instance') - auth_token: str = get_auth_token() - playlist_id: str = addon.getSettingString('watch_history_playlist') - - videos: list = requests.get(f'{instance}/playlists/{playlist_id}').json()['relatedStreams'] - - for i in range(len(videos)): - if videos[i]['url'] == f"/watch?v={video_id}": - requests.post(f'{instance}/user/playlists/remove', json = dict( - playlistId = playlist_id, - index = i - ), headers={'Authorization': auth_token}) - break - - try: - with open(f'{profile_path}/watch_history.json', 'r') as f: - history = json.load(f) - history.remove(video_id) - - with open(f'{profile_path}/watch_history.json', 'w+') as f: - json.dump(history, f) - except: - pass - -def channel(channel_id: str, nextpage: str="") -> None: - instance: str = addon.getSettingString('instance') - - url: str = f'{instance}/nextpage/channel/{channel_id}?nextpage={quote(nextpage)}' if len(nextpage) > 0 else f'{instance}/channel/{channel_id}' - - response: dict = requests.get(url).json() - - component_nextpage: str = '' - if 'nextpage' in response and isinstance(response["nextpage"], str): component_nextpage = f'/channel/{channel_id}?nextpage={quote(response["nextpage"])}' - - list_videos(response['relatedStreams'], addon.getSettingBool('watch_history_hide_watched_channels'), component_nextpage) - -def trending() -> None: - instance: str = addon.getSettingString('instance') - - videos = requests.get(f'{instance}/trending?region=US').json() - - list_videos(videos, addon.getSettingBool('watch_history_hide_watched_trending')) - -def search(search_filter: str, query: str='', nextpage: str='') -> None: - instance: str = addon.getSettingString('instance') - - window = xbmcgui.Window(10000) - - if not len(query) > 0: - query = window.getProperty('PipedLastSearch') if len(window.getProperty('PipedLastSearch')) > 0 else xbmcgui.Dialog().input(addon.getLocalizedString(30006)) - window.setProperty('PipedLastSearch', query) - - if not len(query) > 0: return - - url: str = f'{instance}/nextpage/search?nextpage={quote(nextpage)}&' if len(nextpage) > 0 else f'{instance}/search?' - url += f'q={quote(query)}&filter={search_filter}' - - response: dict = requests.get(url).json() - - component_nextpage: str = '' - if 'nextpage' in response and isinstance(response["nextpage"], str): component_nextpage = f'/search?nextpage={quote(response["nextpage"])}&q={quote(query)}&search_filter={search_filter}' - - if search_filter == 'videos': - list_videos(response['items'], addon.getSettingBool('watch_history_hide_watched_search'), component_nextpage) - elif search_filter == 'channels': - list_channels(response['items'], component_nextpage) - elif search_filter == 'playlists': - list_playlists(response['items'], component_nextpage) - -def search_select(): - window = xbmcgui.Window(10000) - window.setProperty('PipedLastSearch', '') - - xbmcplugin.addDirectoryItem(handle=addon_handle, url=f"{addon_url}/search?search_filter=videos", listitem=xbmcgui.ListItem(addon.getLocalizedString(30018)), isFolder=True) - xbmcplugin.addDirectoryItem(handle=addon_handle, url=f"{addon_url}/search?search_filter=channels", listitem=xbmcgui.ListItem(addon.getLocalizedString(30019)), isFolder=True) - xbmcplugin.addDirectoryItem(handle=addon_handle, url=f"{addon_url}/search?search_filter=playlists", listitem=xbmcgui.ListItem(addon.getLocalizedString(30003)), isFolder=True) - xbmcplugin.endOfDirectory(addon_handle) - -if __name__ == "__main__": - component: dict = get_component(sys.argv[0] + sys.argv[2]) +setContent(int(sys.argv[1]), 'videos') - if component['path'] == '/': home() - elif component['path'] == '/feed': feed() - elif component['path'] == '/settings': addon.openSettings() - elif component['path'] == '/subscriptions': subscriptions() - elif component['path'] == '/playlists': playlists() - elif component['path'] == '/search_select': search_select() - elif component['path'] == '/search': search(component['params']['search_filter'], component['params']['q'] if 'q' in component['params'] else '', component['params']['nextpage'] if 'nextpage' in component['params'] else '') - elif component['path'] == '/trending': trending() - elif component['path'] == '/playlist': playlist(component['params']['id']) - elif component['path'] == '/watch_history': watch_history() - elif component['path'] == '/set_watch_history': set_watch_history(component['params']['id']) - elif component['path'] == '/mark_as_watched': mark_as_watched(component['params']['id']) - elif component['path'] == '/mark_as_unwatched': mark_as_unwatched(component['params']['id']) - elif component['path'][:6] == '/watch': watch(component['path'][7:]) - elif component['path'][:8] == '/channel': channel(component['path'][9:], component['params']['nextpage'] if 'nextpage' in component['params'] else '') +router(sys.argv) \ No newline at end of file diff --git a/plugin.video.piped/lib/authentication.py b/plugin.video.piped/lib/authentication.py new file mode 100644 index 0000000000..c5b548987d --- /dev/null +++ b/plugin.video.piped/lib/authentication.py @@ -0,0 +1,26 @@ +from xbmcaddon import Addon +from xbmcgui import Dialog + +def get_auth_token() -> str: + addon = Addon() + if not addon.getSettingBool('use_login'): return '' + + if len(addon.getSettingString('auth_token')) > 0: + return addon.getSettingString('auth_token') + else: + error_msg: str = '' + try: + result = requests.post(f'{addon.getSettingString("instance")}/login', json = dict( + username = addon.getSettingString('username'), + password = addon.getSettingString('password') + )) + + error_msg = result.text + + auth_token = result.json()['token'] + addon.setSettingString('auth_token', auth_token) + + return auth_token + except: + Dialog().ok(addon.getLocalizedString(30016), error_msg) + return '' \ No newline at end of file diff --git a/plugin.video.piped/lib/dash.py b/plugin.video.piped/lib/dash.py new file mode 100644 index 0000000000..20181efda1 --- /dev/null +++ b/plugin.video.piped/lib/dash.py @@ -0,0 +1,70 @@ +from requests import get +import xbmc +from xbmcaddon import Addon + +def generate_dash(video_id: str) -> str: + addon = Addon() + resp = get(f'{addon.getSettingString("instance")}/streams/{video_id}').json() + + streams: dict = dict( + audio = dict(), + video = dict(), + ) + + default_audio: dict = dict() + prefer_original_lang: bool = addon.getSettingBool("audio_prefer_original_lang") + preferred_lang: str = addon.getSettingString("audio_custom_lang") if addon.getSettingString("audio_custom_lang") and not addon.getSettingBool("audio_prefer_kodi_lang") else xbmc.getLanguage(xbmc.ISO_639_1) + + for stream in resp["audioStreams"] + resp["videoStreams"]: + media_lang = stream["audioTrackLocale"] if stream["audioTrackLocale"] is not None else 'null' + media_type, media_format = stream["mimeType"].split("/") + if media_type in ['audio', 'video'] and "googlevideo" in stream["url"]: + if media_type == 'audio' and ((prefer_original_lang and stream["audioTrackType"] == "ORIGINAL") or (not prefer_original_lang and media_lang[:2] == preferred_lang)): + if not default_audio.__contains__(media_lang): default_audio[media_lang]: dict = dict() + if not default_audio[media_lang].__contains__(media_format): default_audio[media_lang][media_format]: list = list() + default_audio[media_lang][media_format].append(stream) + else: + if not streams[media_type].__contains__(media_lang): streams[media_type][media_lang]: dict = dict() + if not streams[media_type][media_lang].__contains__(media_format): streams[media_type][media_lang][media_format]: list = list() + streams[media_type][media_lang][media_format].append(stream) + + streams['audio'] = default_audio | streams['audio'] + + mpd: str = '' + mpd += f'' + + mpd += '' + + if addon.getSettingBool("subtitles_load"): + for subtitle in resp["subtitles"]: + mpd += f'' + mpd += '' + mpd += f'' + mpd += f'{subtitle["url"].replace("&", "&")}' + mpd += '' + + for stream_type in ['audio', 'video']: + for stream_lang in streams[stream_type]: + for stream_format in streams[stream_type][stream_lang]: + stream_xml: str = '' + for stream in streams[stream_type][stream_lang][stream_format]: + if stream["initEnd"] > 0: + stream_xml += f'' + stream_xml += f'{stream["url"].replace("&", "&")}' + stream_xml += f'' + stream_xml += f'' + stream_xml += '' + + if len(stream_xml) > 0: + mpd += f'' + mpd += stream_xml + mpd += f'' + + mpd += '' + + return mpd \ No newline at end of file diff --git a/plugin.video.piped/lib/history.py b/plugin.video.piped/lib/history.py new file mode 100644 index 0000000000..e404ecc6b6 --- /dev/null +++ b/plugin.video.piped/lib/history.py @@ -0,0 +1,69 @@ +import json +from requests import get, post +from xbmcaddon import Addon +from xbmcvfs import translatePath + +from lib.authentication import get_auth_token + +def set_watch_history(playlist_id: str) -> None: + addon = Addon() + addon.setSettingBool('watch_history_enable', True) + addon.setSettingString('watch_history_playlist', playlist_id) + +def mark_as_watched(video_id: str) -> None: + addon = Addon() + profile_path: str = translatePath(addon.getAddonInfo("profile")) + instance: str = addon.getSettingString('instance') + auth_token: str = get_auth_token() + playlist_id: str = addon.getSettingString('watch_history_playlist') + + videos = get(f'{instance}/playlists/{playlist_id}').json()['relatedStreams'] + index: int = -1 + + for i in range(len(videos)): + if videos[i]['url'] == f"/watch?v={video_id}": + index = i + break + + if index == -1: + post(f'{instance}/user/playlists/add', json = dict( + playlistId = playlist_id, + videoId = video_id + ), headers={'Authorization': auth_token}) + + try: + with open(f'{profile_path}/watch_history.json', 'r') as f: + history = json.load(f) + history.insert(0, video_id) + + with open(f'{profile_path}/watch_history.json', 'w+') as f: + json.dump(history, f) + except: + pass + +def mark_as_unwatched(video_id: str) -> None: + addon = Addon() + profile_path: str = translatePath(addon.getAddonInfo("profile")) + instance: str = addon.getSettingString('instance') + auth_token: str = get_auth_token() + playlist_id: str = addon.getSettingString('watch_history_playlist') + + videos: list = get(f'{instance}/playlists/{playlist_id}').json()['relatedStreams'] + + for i in range(len(videos)): + if videos[i]['url'] == f"/watch?v={video_id}": + post(f'{instance}/user/playlists/remove', json = dict( + playlistId = playlist_id, + index = i + ), headers={'Authorization': auth_token}) + break + + try: + with open(f'{profile_path}/watch_history.json', 'r') as f: + history = json.load(f) + history.remove(video_id) + + with open(f'{profile_path}/watch_history.json', 'w+') as f: + json.dump(history, f) + except: + pass diff --git a/plugin.video.piped/lib/sections.py b/plugin.video.piped/lib/sections.py new file mode 100644 index 0000000000..087df3f46b --- /dev/null +++ b/plugin.video.piped/lib/sections.py @@ -0,0 +1,285 @@ +import time +import json +from re import sub +from urllib.parse import quote +from requests import get +from xbmcaddon import Addon +from xbmcvfs import translatePath +import xbmcgui +import xbmcplugin + +from lib.authentication import get_auth_token +from lib.history import set_watch_history, mark_as_watched, mark_as_unwatched +from lib.utils import get_component, human_format + +addon = Addon() +addon_handle: int = -1 # Will be properly set by router +addon_url: str = f"plugin://{addon.getAddonInfo('id')}" + +def home() -> None: + folders: list = list() + if addon.getSettingBool('use_login'): + folders.append(('feed', addon.getLocalizedString(30001))) + folders.append(('subscriptions', addon.getLocalizedString(30002))) + folders.append(('playlists',addon.getLocalizedString(30003))) + if addon.getSettingBool('watch_history_enable') and len(addon.getSettingString('watch_history_playlist')) > 0: + folders.append(('watch_history', addon.getLocalizedString(30004))) + + folders.append(('trending', addon.getLocalizedString(30005))) + folders.append(('search_select', addon.getLocalizedString(30006))) + folders.append(('settings', addon.getLocalizedString(30007))) + + for folder in folders: + xbmcplugin.addDirectoryItem(handle=addon_handle, url=f"{addon_url}/{folder[0]}", listitem=xbmcgui.ListItem(folder[1]), isFolder=True) + + xbmcplugin.endOfDirectory(addon_handle) + +def watch(video_id: str) -> None: + listitem = xbmcgui.ListItem( + path=f'http://localhost:{addon.getSettingInt("http_port")}/watch?v={video_id}', + ) + listitem.setProperty('inputstream', 'inputstream.adaptive') + listitem.setProperty('inputstream.adaptive.manifest_type', 'mpd') + listitem.setProperty('piped_video_id', video_id) + + xbmcplugin.setResolvedUrl(handle=addon_handle, succeeded=True, listitem=listitem) + +def list_videos(videos: list, hide_watched: bool=False, nextpage: str='') -> None: + history: list = list() + watch_history_enabled: bool = addon.getSettingBool('watch_history_enable') and len(addon.getSettingString('watch_history_playlist')) > 0 + if watch_history_enabled: + try: + with open(f'{translatePath(addon.getAddonInfo("profile"))}/watch_history.json', 'r') as f: + history = json.load(f) + except: + pass + + for video in videos: + plugin_url: str = f"{addon_url}{video['url'].replace('?v=', '/')}" + video_id: str = get_component(video['url'])['params']['v'] + if hide_watched and video_id in history: continue + if 'uploadedDate' in video and video['uploadedDate'] is not None: date: str = video['uploadedDate'] + elif video['uploaded'] > 0: date: str = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(video['uploaded'] / 1000)) + else: date: str = '' + info: str = f"{video['title']}\n\n{video['uploaderName']}\n\n" + if video['views'] >=0: info += f"{addon.getLocalizedString(30008)}: {human_format(video['views'])}\n" + if len(date) > 2: info += f"{addon.getLocalizedString(30009)}: {date}" + listitem = xbmcgui.ListItem(label=video['title'], path=plugin_url) + listitem.setProperty('isplayable', 'true') + listitem.setArt(dict( + thumb = video['thumbnail'], + fanart = video['uploaderAvatar'] + )) + + tag = listitem.getVideoInfoTag() + tag.setTitle(video['title']) + tag.setPlot(info) + tag.setDuration(video['duration']) + tag.setFilenameAndPath(plugin_url) + tag.setPath(plugin_url) + + context_menu_items: list = [(addon.getLocalizedString(30010), f"RunAddon({addon.getAddonInfo('id')}, {video['uploaderUrl']})")] + if watch_history_enabled: + if video_id in history: + context_menu_items.append((addon.getLocalizedString(30011), f"RunPlugin({addon_url}/mark_as_unwatched?id={video_id})")) + else: + context_menu_items.append((addon.getLocalizedString(30012), f"RunPlugin({addon_url}/mark_as_watched?id={video_id})")) + listitem.addContextMenuItems(context_menu_items, replaceItems=True) + + xbmcplugin.addDirectoryItem(addon_handle, plugin_url, listitem, False) + + if len(nextpage) > 0: + xbmcplugin.addDirectoryItem(handle=addon_handle, url=f"{addon_url}/{nextpage}", listitem=xbmcgui.ListItem(addon.getLocalizedString(30017)), isFolder=True) + + xbmcplugin.endOfDirectory(addon_handle) + +def feed() -> None: + instance: str = addon.getSettingString('instance') + auth_token = get_auth_token() + + videos = get(f'{instance}/feed?authToken={auth_token}').json() + + list_videos(videos, addon.getSettingBool('watch_history_hide_watched_feed')) + +def list_channels(channels: list, nextpage: str='') -> None: + for channel in channels: + info: str = '' + if 'shortDescription' in channel and channel['shortDescription'] is not None: info += channel['shortDescription'] + "\n\n" + elif 'description' in channel and channel['description'] is not None: info += channel['description'] + "\n\n" + + listitem = xbmcgui.ListItem(channel['name']) + + if 'avatar' in channel: + listitem.setArt(dict( + thumb = channel['avatar'] + )) + elif 'thumbnail' in channel: + listitem.setArt(dict( + thumb = channel['thumbnail'] + )) + + tag = listitem.getVideoInfoTag() + tag.setTitle(channel['name']) + tag.setPlot(info) + + xbmcplugin.addDirectoryItem(addon_handle, f"{addon_url}{channel['url']}", listitem, True) + + if len(nextpage) > 0: + xbmcplugin.addDirectoryItem(handle=addon_handle, url=f"{addon_url}/{nextpage}", listitem=xbmcgui.ListItem(addon.getLocalizedString(30017)), isFolder=True) + + xbmcplugin.endOfDirectory(addon_handle) + +def subscriptions() -> None: + instance: str = addon.getSettingString('instance') + auth_token = get_auth_token() + + list_channels(get(f'{instance}/subscriptions', headers={'Authorization': auth_token}).json()) + +def list_playlists(playlists: list, nextpage: str='') -> None: + for playlist in playlists: + info: str = '' + if 'shortDescription' in playlist and playlist['shortDescription'] is not None: info += playlist['shortDescription'] + "\n\n" + elif 'description' in playlist and playlist['description'] is not None: info += playlist['description'] + "\n\n" + info += f"{addon.getLocalizedString(30018)}: {playlist['videos']}" + + if 'id' not in playlist: + playlist['id'] = get_component(playlist['url'])['params']['list'] + + listitem = xbmcgui.ListItem(playlist['name']) + listitem.setArt(dict( + thumb = playlist['thumbnail'] + )) + + tag = listitem.getVideoInfoTag() + tag.setTitle(playlist['name']) + tag.setPlot(info) + + listitem.addContextMenuItems([(addon.getLocalizedString(30013), f"RunPlugin({addon_url}/set_watch_history?id={playlist['id']})")]) + xbmcplugin.addDirectoryItem(addon_handle, f"{addon_url}/playlist?id={playlist['id']}", listitem, True) + + if len(nextpage) > 0: + xbmcplugin.addDirectoryItem(handle=addon_handle, url=f"{addon_url}/{nextpage}", listitem=xbmcgui.ListItem(addon.getLocalizedString(30017)), isFolder=True) + + xbmcplugin.endOfDirectory(addon_handle) + +def playlists() -> None: + instance: str = addon.getSettingString('instance') + auth_token = get_auth_token() + + list_playlists(get(f'{instance}/user/playlists', headers={'Authorization': auth_token}).json()) + +def playlist(playlist_id: str, hide_watched=None) -> None: + instance: str = addon.getSettingString('instance') + + playlist_info = get(f'{instance}/playlists/{playlist_id}').json() + hide_watched: bool = hide_watched if hide_watched is not None else addon.getSettingBool('watch_history_hide_watched_playlists') + + if playlist_info['videos'] > 0: list_videos(playlist_info['relatedStreams'], hide_watched) + else: xbmcgui.Dialog().ok(addon.getLocalizedString(30014), addon.getLocalizedString(30015)) + +def watch_history() -> None: + playlist(addon.getSettingString('watch_history_playlist'), False) + +def channel(channel_id: str, nextpage: str="") -> None: + instance: str = addon.getSettingString('instance') + + url: str = f'{instance}/nextpage/channel/{channel_id}?nextpage={quote(nextpage)}' if len(nextpage) > 0 else f'{instance}/channel/{channel_id}' + + response: dict = get(url).json() + + component_nextpage: str = '' + if 'nextpage' in response and isinstance(response["nextpage"], str): component_nextpage = f'/channel/{channel_id}?nextpage={quote(response["nextpage"])}' + + list_videos(response['relatedStreams'], addon.getSettingBool('watch_history_hide_watched_channels'), component_nextpage) + +def trending() -> None: + instance: str = addon.getSettingString('instance') + + videos = get(f'{instance}/trending?region=US').json() + + list_videos(videos, addon.getSettingBool('watch_history_hide_watched_trending')) + +def search(search_filter: str, query: str='', nextpage: str='') -> None: + instance: str = addon.getSettingString('instance') + + window = xbmcgui.Window(10000) + + if not len(query) > 0: + query = window.getProperty('PipedLastSearch') if len(window.getProperty('PipedLastSearch')) > 0 else xbmcgui.Dialog().input(addon.getLocalizedString(30006)) + window.setProperty('PipedLastSearch', query) + + if not len(query) > 0: return + + url: str = f'{instance}/nextpage/search?nextpage={quote(nextpage)}&' if len(nextpage) > 0 else f'{instance}/search?' + url += f'q={quote(query)}&filter={search_filter}' + + response: dict = get(url).json() + + component_nextpage: str = '' + if 'nextpage' in response and isinstance(response["nextpage"], str): component_nextpage = f'/search?nextpage={quote(response["nextpage"])}&q={quote(query)}&search_filter={search_filter}' + + if search_filter == 'videos': + list_videos(response['items'], addon.getSettingBool('watch_history_hide_watched_search'), component_nextpage) + elif search_filter == 'channels': + list_channels(response['items'], component_nextpage) + elif search_filter == 'playlists': + list_playlists(response['items'], component_nextpage) + +def search_select() -> None: + window = xbmcgui.Window(10000) + window.setProperty('PipedLastSearch', '') + + xbmcplugin.addDirectoryItem(handle=addon_handle, url=f"{addon_url}/search?search_filter=videos", listitem=xbmcgui.ListItem(addon.getLocalizedString(30018)), isFolder=True) + xbmcplugin.addDirectoryItem(handle=addon_handle, url=f"{addon_url}/search?search_filter=channels", listitem=xbmcgui.ListItem(addon.getLocalizedString(30019)), isFolder=True) + xbmcplugin.addDirectoryItem(handle=addon_handle, url=f"{addon_url}/search?search_filter=playlists", listitem=xbmcgui.ListItem(addon.getLocalizedString(30003)), isFolder=True) + xbmcplugin.endOfDirectory(addon_handle) + +def settings() -> None: + addon.openSettings() + +def router(argv: list) -> None: + component: dict = get_component(argv[0] + argv[2]) + + global addon_handle + addon_handle = int(argv[1]) + + routes: dict = { + 'home': {}, + 'feed': {}, + 'settings': {}, + 'subscriptions': {}, + 'playlists': {}, + 'search_select': {}, + 'search': { + 'search_filter': component['params']['search_filter'] if 'search_filter' in component['params'] else '', + 'query': component['params']['q'] if 'q' in component['params'] else '', + 'nextpage': component['params']['nextpage'] if 'nextpage' in component['params'] else '' + }, + 'trending': {}, + 'playlist': { + 'playlist_id': component['params']['id'] if 'id' in component['params'] else '' + }, + 'watch_history': {}, + 'set_watch_history': { + 'playlist_id': component['params']['id'] if 'id' in component['params'] else '' + }, + 'mark_as_watched': { + 'video_id': component['params']['id'] if 'id' in component['params'] else '' + }, + 'mark_as_unwatched': { + 'video_id': component['params']['id'] if 'id' in component['params'] else '' + }, + 'watch': { + 'video_id': sub(r'.*\/', '', component['path']) + }, + 'channel': { + 'channel_id': sub(r'.*\/', '', component['path']), + 'nextpage': component['params']['nextpage'] if 'nextpage' in component['params'] else '' + }, + } + + route: str = sub(r'\/.*', '', component['path'][1:]) + if route == '': route = 'home' + + if route in routes: + globals()[route](**routes[route]) \ No newline at end of file diff --git a/plugin.video.piped/lib/services/__init__.py b/plugin.video.piped/lib/services/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/plugin.video.piped/lib/services/entrypoint.py b/plugin.video.piped/lib/services/entrypoint.py new file mode 100644 index 0000000000..ac03cf93a1 --- /dev/null +++ b/plugin.video.piped/lib/services/entrypoint.py @@ -0,0 +1,28 @@ +from threading import Thread +import xbmc + +from lib.services.httpserver import HttpService +from lib.services.scheduler import Scheduler +from lib.services.player import Player + +class Service(xbmc.Monitor): + def __init__(self): + httpservice = Thread(target=HttpService) + scheduler = Scheduler() + httpservice.daemon = True + scheduler.daemon = True + player = Player() + player.isPlaying() + + while not self.abortRequested(): + if self.waitForAbort(5): + while scheduler.is_alive(): + scheduler.stop() + xbmc.sleep(200) + break + + try: + if not httpservice.is_alive(): httpservice.start() + if not scheduler.is_alive(): scheduler.start() + except: + pass \ No newline at end of file diff --git a/plugin.video.piped/lib/services/httpserver.py b/plugin.video.piped/lib/services/httpserver.py new file mode 100644 index 0000000000..f2493ee582 --- /dev/null +++ b/plugin.video.piped/lib/services/httpserver.py @@ -0,0 +1,32 @@ +from http.server import SimpleHTTPRequestHandler +from socketserver import TCPServer +from urllib.parse import parse_qsl +from xbmcaddon import Addon + +from lib.dash import generate_dash + +class HttpRequestHandler(SimpleHTTPRequestHandler): + def do_GET(self): + if self.path.startswith('/watch?v='): + self.send_response(200) + self.send_header('Content type', 'application/dash+xml') + self.end_headers() + self.wfile.write(generate_dash(parse_qsl(self.path)[0][1]).encode('utf-8')) + else: + self.send_error(404, "File not Found") + + def do_HEAD(self): + if self.path.startswith('/watch?v='): + self.send_response(200) + self.send_header('Content type', 'application/dash+xml') + self.end_headers() + else: + self.send_error(404, "File not Found") + + return + +def HttpService(): + http_port: int = 0 if Addon().getSettingBool('http_port_random') else Addon().getSettingInt('http_port') + with TCPServer(('127.0.0.1', http_port), HttpRequestHandler) as httpd: + Addon().setSettingInt('http_port', httpd.socket.getsockname()[1]) + httpd.serve_forever() \ No newline at end of file diff --git a/plugin.video.piped/lib/services/player.py b/plugin.video.piped/lib/services/player.py new file mode 100644 index 0000000000..cb4821f198 --- /dev/null +++ b/plugin.video.piped/lib/services/player.py @@ -0,0 +1,44 @@ +import xbmc +from xbmcaddon import Addon + +from lib.history import mark_as_watched + +class Player(xbmc.Player): + def __init__(self): + super(xbmc.Player, self).__init__() + + self.video_id = None + + def watchHistoryEnabled(self): + return Addon().getSettingBool('watch_history_enable') and len(Addon().getSettingString('watch_history_playlist')) > 0 + + def markAsWatched(self): + if self.watchHistoryEnabled() and self.video_id is not None: + mark_as_watched(self.video_id) + self.video_id = None + + def onPlayBackStarted(self): + video_id = self.getPlayingItem().getProperty('piped_video_id') + self.video_id = video_id if isinstance(video_id, str) and len(video_id) > 5 else None + + while self.video_id is not None: + try: + time_remaining: float = self.getTotalTime() - self.getTime() + if time_remaining > 0. and time_remaining < 5.: self.markAsWatched() + except: + pass + + xbmc.sleep(500) + + def onPlayBackEnded(self): + self.markAsWatched() + + def onPlayBackStopped(self): + self.video_id = None + + def onPlayBackSeek(self, time, seekOffset): + try: + if time + seekOffset > (self.getTotalTime() - 5) * 1000: + self.markAsWatched() + except: + pass diff --git a/plugin.video.piped/lib/services/scheduler.py b/plugin.video.piped/lib/services/scheduler.py new file mode 100644 index 0000000000..2b37c36756 --- /dev/null +++ b/plugin.video.piped/lib/services/scheduler.py @@ -0,0 +1,33 @@ +import json +from threading import Thread, Event +from requests import get +from xbmcaddon import Addon +from xbmcvfs import translatePath + +from lib.utils import get_component + +class Scheduler(Thread): + def __init__(self): + super(Scheduler, self).__init__() + self._stop_event = Event() + + def run(self): + while not self._stop_event.is_set(): + if Addon().getSettingBool('watch_history_enable') and len(Addon().getSettingString('watch_history_playlist')) > 0: + history: list = list() + history_playlist: list = get(f'{Addon().getSettingString("instance")}/playlists/{Addon().getSettingString("watch_history_playlist")}').json()['relatedStreams'] + + for watched in history_playlist: + history.append(get_component(watched['url'])['params']['v']) + + history.reverse() + + if len(history) > 0: + with open(f'{translatePath(Addon().getAddonInfo("profile"))}/watch_history.json', 'w+') as f: + json.dump(history, f) + + self._stop_event.wait(Addon().getSettingInt('watch_history_refresh') * 60_000) + + def stop(self, timeout=1): + self._stop_event.set() + self.join(timeout) \ No newline at end of file diff --git a/plugin.video.piped/lib/utils.py b/plugin.video.piped/lib/utils.py index 61edaf1da6..6a02ff31f6 100644 --- a/plugin.video.piped/lib/utils.py +++ b/plugin.video.piped/lib/utils.py @@ -18,4 +18,4 @@ def human_format(num): while abs(num) >= 1000: magnitude += 1 num /= 1000.0 - return '{} {}'.format('{:f}'.format(num).rstrip('0').rstrip('.'), ['', 'K', 'M', 'B', 'T'][magnitude]) + return '{} {}'.format('{:f}'.format(num).rstrip('0').rstrip('.'), ['', 'K', 'M', 'B', 'T'][magnitude]) \ No newline at end of file diff --git a/plugin.video.piped/service.py b/plugin.video.piped/service.py index a40339a981..315e4e48ec 100644 --- a/plugin.video.piped/service.py +++ b/plugin.video.piped/service.py @@ -1,202 +1,3 @@ -from http.server import SimpleHTTPRequestHandler -import socketserver -import requests -import json -from urllib.parse import parse_qsl -import threading +from lib.services.entrypoint import Service -import xbmc -import xbmcaddon -import xbmcvfs - -from lib.utils import get_component -from default import mark_as_watched - -addon = xbmcaddon.Addon() -profile_path: str = xbmcvfs.translatePath(xbmcaddon.Addon().getAddonInfo("profile")) - -instance: str = addon.getSettingString('instance') - -def generate_dash(video_id: str) -> str: - resp = requests.get(f'{instance}/streams/{video_id}').json() - - streams: dict = dict( - audio = dict(), - video = dict(), - ) - - default_audio: dict = dict() - prefer_original_lang: bool = addon.getSettingBool("audio_prefer_original_lang") - preferred_lang: str = addon.getSettingString("audio_custom_lang") if addon.getSettingString("audio_custom_lang") and not addon.getSettingBool("audio_prefer_kodi_lang") else xbmc.getLanguage(xbmc.ISO_639_1) - - for stream in resp["audioStreams"] + resp["videoStreams"]: - media_lang = stream["audioTrackLocale"] if stream["audioTrackLocale"] is not None else 'null' - media_type, media_format = stream["mimeType"].split("/") - if media_type in ['audio', 'video'] and "googlevideo" in stream["url"]: - if media_type == 'audio' and ((prefer_original_lang and stream["audioTrackType"] == "ORIGINAL") or (not prefer_original_lang and media_lang[:2] == preferred_lang)): - if not default_audio.__contains__(media_lang): default_audio[media_lang]: dict = dict() - if not default_audio[media_lang].__contains__(media_format): default_audio[media_lang][media_format]: list = list() - default_audio[media_lang][media_format].append(stream) - else: - if not streams[media_type].__contains__(media_lang): streams[media_type][media_lang]: dict = dict() - if not streams[media_type][media_lang].__contains__(media_format): streams[media_type][media_lang][media_format]: list = list() - streams[media_type][media_lang][media_format].append(stream) - - streams['audio'] = default_audio | streams['audio'] - - mpd: str = '' - mpd += f'' - - mpd += '' - - if addon.getSettingBool("subtitles_load"): - for subtitle in resp["subtitles"]: - mpd += f'' - mpd += '' - mpd += f'' - mpd += f'{subtitle["url"].replace("&", "&")}' - mpd += '' - - for stream_type in ['audio', 'video']: - for stream_lang in streams[stream_type]: - for stream_format in streams[stream_type][stream_lang]: - stream_xml: str = '' - for stream in streams[stream_type][stream_lang][stream_format]: - if stream["initEnd"] > 0: - stream_xml += f'' - stream_xml += f'{stream["url"].replace("&", "&")}' - stream_xml += f'' - stream_xml += f'' - stream_xml += '' - - if len(stream_xml) > 0: - mpd += f'' - mpd += stream_xml - mpd += f'' - - mpd += '' - - return mpd - - -class HttpRequestHandler(SimpleHTTPRequestHandler): - def do_GET(self): - if self.path.startswith('/watch?v='): - self.send_response(200) - self.send_header('Content type', 'application/dash+xml') - self.end_headers() - self.wfile.write(generate_dash(parse_qsl(self.path)[0][1]).encode('utf-8')) - else: - self.send_error(404, "File not Found") - - def do_HEAD(self): - if self.path.startswith('/watch?v='): - self.send_response(200) - self.send_header('Content type', 'application/dash+xml') - self.end_headers() - else: - self.send_error(404, "File not Found") - - return - -def HttpService(): - http_port: int = 0 if addon.getSettingBool('http_port_random') else addon.getSettingInt('http_port') - with socketserver.TCPServer(('127.0.0.1', http_port), HttpRequestHandler) as httpd: - addon.setSettingInt('http_port', httpd.socket.getsockname()[1]) - httpd.serve_forever() - -class Scheduler(threading.Thread): - def __init__(self): - super(Scheduler, self).__init__() - self._stop_event = threading.Event() - - def run(self): - while not self._stop_event.is_set(): - if addon.getSettingBool('watch_history_enable') and len(addon.getSettingString('watch_history_playlist')) > 0: - history: list = list() - history_playlist: list = requests.get(f"{instance}/playlists/{addon.getSettingString('watch_history_playlist')}").json()['relatedStreams'] - - for watched in history_playlist: - history.append(get_component(watched['url'])['params']['v']) - - history.reverse() - - if len(history) > 0: - with open(f'{profile_path}/watch_history.json', 'w+') as f: - json.dump(history, f) - - self._stop_event.wait(addon.getSettingInt('watch_history_refresh') * 60_000) - - def stop(self, timeout=1): - self._stop_event.set() - self.join(timeout) - -class Player(xbmc.Player): - def __init__(self): - super(xbmc.Player, self).__init__() - - self.video_id = None - - def watchHistoryEnabled(self): - return addon.getSettingBool('watch_history_enable') and len(addon.getSettingString('watch_history_playlist')) > 0 - - def markAsWatched(self): - if self.watchHistoryEnabled() and self.video_id is not None: - mark_as_watched(self.video_id) - self.video_id = None - - def onPlayBackStarted(self): - video_id = self.getPlayingItem().getProperty('piped_video_id') - self.video_id = video_id if isinstance(video_id, str) and len(video_id) > 5 else None - - while self.video_id is not None: - try: - time_remaining: float = self.getTotalTime() - self.getTime() - if time_remaining > 0. and time_remaining < 5.: self.markAsWatched() - except: - pass - - xbmc.sleep(500) - - def onPlayBackEnded(self): - self.markAsWatched() - - def onPlayBackStopped(self): - self.video_id = None - - def onPlayBackSeek(self, time, seekOffset): - try: - if time + seekOffset > (self.getTotalTime() - 5) * 1000: - self.markAsWatched() - except: - pass - -class Service(xbmc.Monitor): - def __init__(self): - httpservice = threading.Thread(target=HttpService) - scheduler = Scheduler() - httpservice.daemon = True - scheduler.daemon = True - player = Player() - player.isPlaying() - - while not self.abortRequested(): - if self.waitForAbort(5): - while scheduler.is_alive(): - scheduler.stop() - xbmc.sleep(200) - break - - try: - if not httpservice.is_alive(): httpservice.start() - if not scheduler.is_alive(): scheduler.start() - except: - pass - -if __name__ == '__main__': - Service() +Service() \ No newline at end of file From 9c543a4509a62665b87368457405787ff6620b6b Mon Sep 17 00:00:00 2001 From: syhlx Date: Wed, 24 Jan 2024 15:21:42 +0100 Subject: [PATCH 6/6] Fix abort handling in service --- plugin.video.piped/lib/services/entrypoint.py | 17 ++++++---------- plugin.video.piped/lib/services/httpserver.py | 20 ++++++++++++++----- 2 files changed, 21 insertions(+), 16 deletions(-) diff --git a/plugin.video.piped/lib/services/entrypoint.py b/plugin.video.piped/lib/services/entrypoint.py index ac03cf93a1..0f1122359d 100644 --- a/plugin.video.piped/lib/services/entrypoint.py +++ b/plugin.video.piped/lib/services/entrypoint.py @@ -1,4 +1,3 @@ -from threading import Thread import xbmc from lib.services.httpserver import HttpService @@ -7,22 +6,18 @@ class Service(xbmc.Monitor): def __init__(self): - httpservice = Thread(target=HttpService) + httpservice = HttpService() scheduler = Scheduler() httpservice.daemon = True scheduler.daemon = True player = Player() - player.isPlaying() - - while not self.abortRequested(): - if self.waitForAbort(5): - while scheduler.is_alive(): - scheduler.stop() - xbmc.sleep(200) - break + while not self.waitForAbort(5): try: if not httpservice.is_alive(): httpservice.start() if not scheduler.is_alive(): scheduler.start() except: - pass \ No newline at end of file + pass + + scheduler.stop() + httpservice.stop() \ No newline at end of file diff --git a/plugin.video.piped/lib/services/httpserver.py b/plugin.video.piped/lib/services/httpserver.py index f2493ee582..14ebb4681e 100644 --- a/plugin.video.piped/lib/services/httpserver.py +++ b/plugin.video.piped/lib/services/httpserver.py @@ -1,3 +1,4 @@ +from threading import Thread from http.server import SimpleHTTPRequestHandler from socketserver import TCPServer from urllib.parse import parse_qsl @@ -25,8 +26,17 @@ def do_HEAD(self): return -def HttpService(): - http_port: int = 0 if Addon().getSettingBool('http_port_random') else Addon().getSettingInt('http_port') - with TCPServer(('127.0.0.1', http_port), HttpRequestHandler) as httpd: - Addon().setSettingInt('http_port', httpd.socket.getsockname()[1]) - httpd.serve_forever() \ No newline at end of file +class HttpService(Thread): + def __init__(self): + super(HttpService, self).__init__() + self.httpd = None + + def run(self): + http_port: int = 0 if Addon().getSettingBool('http_port_random') else Addon().getSettingInt('http_port') + with TCPServer(('127.0.0.1', http_port), HttpRequestHandler) as self.httpd: + Addon().setSettingInt('http_port', self.httpd.socket.getsockname()[1]) + self.httpd.serve_forever() + + def stop(self, timeout=1): + if self.httpd is not None: self.httpd.shutdown() + self.join(timeout) \ No newline at end of file