diff --git a/.travis.yml b/.travis.yml
index 188d6eaa..ca3421c2 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -53,8 +53,6 @@ addons:
   apt:
     packages:
     - nsis
-    - imagemagick
-    - inkscape
 
 before_deploy:
   - ./script/bintrayconfig.sh
diff --git a/NOTICE b/NOTICE
index 67fbc3eb..61540e3e 100644
--- a/NOTICE
+++ b/NOTICE
@@ -1,4 +1,5 @@
 Streamlink includes some bundled python libraries to ease installation.
+Streamlink also makes use of an image (doggo.ico) created by Jinho Jung, distributed under the CC BY-SA 2.0 license.
 
 pbs License
 ===========
@@ -46,3 +47,56 @@ LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
 ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
 SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+doggo.ico License
+=================
+THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE COMMONS PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED.
+
+BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE TO BE BOUND BY THE TERMS OF THIS LICENSE. THE LICENSOR GRANTS YOU THE RIGHTS CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND CONDITIONS.
+
+1. Definitions
+
+"Collective Work" means a work, such as a periodical issue, anthology or encyclopedia, in which the Work in its entirety in unmodified form, along with a number of other contributions, constituting separate and independent works in themselves, are assembled into a collective whole. A work that constitutes a Collective Work will not be considered a Derivative Work (as defined below) for the purposes of this License.
+"Derivative Work" means a work based upon the Work or upon the Work and other pre-existing works, such as a translation, musical arrangement, dramatization, fictionalization, motion picture version, sound recording, art reproduction, abridgment, condensation, or any other form in which the Work may be recast, transformed, or adapted, except that a work that constitutes a Collective Work will not be considered a Derivative Work for the purpose of this License. For the avoidance of doubt, where the Work is a musical composition or sound recording, the synchronization of the Work in timed-relation with a moving image ("synching") will be considered a Derivative Work for the purpose of this License.
+"Licensor" means the individual or entity that offers the Work under the terms of this License.
+"Original Author" means the individual or entity who created the Work.
+"Work" means the copyrightable work of authorship offered under the terms of this License.
+"You" means an individual or entity exercising rights under this License who has not previously violated the terms of this License with respect to the Work, or who has received express permission from the Licensor to exercise rights under this License despite a previous violation.
+"License Elements" means the following high-level license attributes as selected by Licensor and indicated in the title of this License: Attribution, ShareAlike.
+2. Fair Use Rights. Nothing in this license is intended to reduce, limit, or restrict any rights arising from fair use, first sale or other limitations on the exclusive rights of the copyright owner under copyright law or other applicable laws.
+
+3. License Grant. Subject to the terms and conditions of this License, Licensor hereby grants You a worldwide, royalty-free, non-exclusive, perpetual (for the duration of the applicable copyright) license to exercise the rights in the Work as stated below:
+
+to reproduce the Work, to incorporate the Work into one or more Collective Works, and to reproduce the Work as incorporated in the Collective Works;
+to create and reproduce Derivative Works;
+to distribute copies or phonorecords of, display publicly, perform publicly, and perform publicly by means of a digital audio transmission the Work including as incorporated in Collective Works;
+to distribute copies or phonorecords of, display publicly, perform publicly, and perform publicly by means of a digital audio transmission Derivative Works.
+For the avoidance of doubt, where the work is a musical composition:
+
+Performance Royalties Under Blanket Licenses. Licensor waives the exclusive right to collect, whether individually or via a performance rights society (e.g. ASCAP, BMI, SESAC), royalties for the public performance or public digital performance (e.g. webcast) of the Work.
+Mechanical Rights and Statutory Royalties. Licensor waives the exclusive right to collect, whether individually or via a music rights society or designated agent (e.g. Harry Fox Agency), royalties for any phonorecord You create from the Work ("cover version") and distribute, subject to the compulsory license created by 17 USC Section 115 of the US Copyright Act (or the equivalent in other jurisdictions).
+Webcasting Rights and Statutory Royalties. For the avoidance of doubt, where the Work is a sound recording, Licensor waives the exclusive right to collect, whether individually or via a performance-rights society (e.g. SoundExchange), royalties for the public digital performance (e.g. webcast) of the Work, subject to the compulsory license created by 17 USC Section 114 of the US Copyright Act (or the equivalent in other jurisdictions).
+The above rights may be exercised in all media and formats whether now known or hereafter devised. The above rights include the right to make such modifications as are technically necessary to exercise the rights in other media and formats. All rights not expressly granted by Licensor are hereby reserved.
+
+4. Restrictions.The license granted in Section 3 above is expressly made subject to and limited by the following restrictions:
+
+You may distribute, publicly display, publicly perform, or publicly digitally perform the Work only under the terms of this License, and You must include a copy of, or the Uniform Resource Identifier for, this License with every copy or phonorecord of the Work You distribute, publicly display, publicly perform, or publicly digitally perform. You may not offer or impose any terms on the Work that alter or restrict the terms of this License or the recipients' exercise of the rights granted hereunder. You may not sublicense the Work. You must keep intact all notices that refer to this License and to the disclaimer of warranties. You may not distribute, publicly display, publicly perform, or publicly digitally perform the Work with any technological measures that control access or use of the Work in a manner inconsistent with the terms of this License Agreement. The above applies to the Work as incorporated in a Collective Work, but this does not require the Collective Work apart from the Work itself to be made subject to the terms of this License. If You create a Collective Work, upon notice from any Licensor You must, to the extent practicable, remove from the Collective Work any reference to such Licensor or the Original Author, as requested. If You create a Derivative Work, upon notice from any Licensor You must, to the extent practicable, remove from the Derivative Work any reference to such Licensor or the Original Author, as requested.
+You may distribute, publicly display, publicly perform, or publicly digitally perform a Derivative Work only under the terms of this License, a later version of this License with the same License Elements as this License, or a Creative Commons iCommons license that contains the same License Elements as this License (e.g. Attribution-ShareAlike 2.0 Japan). You must include a copy of, or the Uniform Resource Identifier for, this License or other license specified in the previous sentence with every copy or phonorecord of each Derivative Work You distribute, publicly display, publicly perform, or publicly digitally perform. You may not offer or impose any terms on the Derivative Works that alter or restrict the terms of this License or the recipients' exercise of the rights granted hereunder, and You must keep intact all notices that refer to this License and to the disclaimer of warranties. You may not distribute, publicly display, publicly perform, or publicly digitally perform the Derivative Work with any technological measures that control access or use of the Work in a manner inconsistent with the terms of this License Agreement. The above applies to the Derivative Work as incorporated in a Collective Work, but this does not require the Collective Work apart from the Derivative Work itself to be made subject to the terms of this License.
+If you distribute, publicly display, publicly perform, or publicly digitally perform the Work or any Derivative Works or Collective Works, You must keep intact all copyright notices for the Work and give the Original Author credit reasonable to the medium or means You are utilizing by conveying the name (or pseudonym if applicable) of the Original Author if supplied; the title of the Work if supplied; to the extent reasonably practicable, the Uniform Resource Identifier, if any, that Licensor specifies to be associated with the Work, unless such URI does not refer to the copyright notice or licensing information for the Work; and in the case of a Derivative Work, a credit identifying the use of the Work in the Derivative Work (e.g., "French translation of the Work by Original Author," or "Screenplay based on original Work by Original Author"). Such credit may be implemented in any reasonable manner; provided, however, that in the case of a Derivative Work or Collective Work, at a minimum such credit will appear where any other comparable authorship credit appears and in a manner at least as prominent as such other comparable authorship credit.
+5. Representations, Warranties and Disclaimer
+
+UNLESS OTHERWISE AGREED TO BY THE PARTIES IN WRITING, LICENSOR OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND CONCERNING THE MATERIALS, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE, INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTIBILITY, FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF ERRORS, WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OF IMPLIED WARRANTIES, SO SUCH EXCLUSION MAY NOT APPLY TO YOU.
+
+6. Limitation on Liability. EXCEPT TO THE EXTENT REQUIRED BY APPLICABLE LAW, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL THEORY FOR ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY DAMAGES ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF LICENSOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+
+7. Termination
+
+This License and the rights granted hereunder will terminate automatically upon any breach by You of the terms of this License. Individuals or entities who have received Derivative Works or Collective Works from You under this License, however, will not have their licenses terminated provided such individuals or entities remain in full compliance with those licenses. Sections 1, 2, 5, 6, 7, and 8 will survive any termination of this License.
+Subject to the above terms and conditions, the license granted here is perpetual (for the duration of the applicable copyright in the Work). Notwithstanding the above, Licensor reserves the right to release the Work under different license terms or to stop distributing the Work at any time; provided, however that any such election will not serve to withdraw this License (or any other license that has been, or is required to be, granted under the terms of this License), and this License will continue in full force and effect unless terminated as stated above.
+8. Miscellaneous
+
+Each time You distribute or publicly digitally perform the Work or a Collective Work, the Licensor offers to the recipient a license to the Work on the same terms and conditions as the license granted to You under this License.
+Each time You distribute or publicly digitally perform a Derivative Work, Licensor offers to the recipient a license to the original Work on the same terms and conditions as the license granted to You under this License.
+If any provision of this License is invalid or unenforceable under applicable law, it shall not affect the validity or enforceability of the remainder of the terms of this License, and without further action by the parties to this agreement, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable.
+No term or provision of this License shall be deemed waived and no breach consented to unless such waiver or consent shall be in writing and signed by the party to be charged with such waiver or consent.
+This License constitutes the entire agreement between the parties with respect to the Work licensed here. There are no understandings, agreements or representations with respect to the Work not specified here. Licensor shall not be bound by any additional provisions that may appear in any communication from You. This License may not be modified without the mutual written agreement of the Licensor and You.
diff --git a/docs/index.rst b/docs/index.rst
index fd774572..d9a2bbae 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -14,6 +14,7 @@ no longer maintained.
 - Issue tracker: https://github.com/streamlink/streamlink/issues
 - PyPI: https://pypi.org/project/streamlink/
 - Free software: Simplified BSD license
+- Icon: https://www.flickr.com/photos/phploveme/27078045626 (cc-by-sa 2.0)
 
 Features
 --------
diff --git a/docs/plugin_matrix.rst b/docs/plugin_matrix.rst
index 6bd754a1..d4f25cb9 100644
--- a/docs/plugin_matrix.rst
+++ b/docs/plugin_matrix.rst
@@ -15,7 +15,8 @@ Name                    URL(s)               Live  VOD   Notes
 abematv                 abema.tv             Yes   Yes   Streams are geo-restricted to Japan.
 abweb                   abweb.com            Yes   No    Requires a login and a subscription.
 adultswim               adultswim.com        Yes   Yes   Streams may be geo-restricted, some VOD streams are protected by DRM.
-afreeca                 play.afreecatv.com   Yes   No
+afreeca                 - afreecatv.com      Yes   No
+                        - afreeca.tv
 aljazeeraen             aljazeera.com        Yes   Yes   English version of the site.
 animelab                animelab.com         --    Yes   Requires a login. Streams may be geo-restricted to Australia and New Zealand.
 app17                   17app.co             Yes   --
diff --git a/icon.svg b/icon.svg
deleted file mode 100644
index 45201351..00000000
--- a/icon.svg
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-<svg width="345.6" height="345.6" version="1.1" viewBox="0 0 345.6 345.6" xmlns="http://www.w3.org/2000/svg" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
- <metadata>
-  <rdf:RDF>
-   <cc:Work rdf:about="">
-    <dc:format>image/svg+xml</dc:format>
-    <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
-    <dc:title/>
-   </cc:Work>
-  </rdf:RDF>
- </metadata>
- <g transform="translate(-4.7157e-6)" stroke-width=".32">
-  <path d="m155.36 327.08c-69.371-39.726-96.696-55.372-109.6-62.753l-14.88-8.5118v-166.25l141.43-80.542 2.1012 1.1696c1.1557 0.6433 33.378 18.806 71.606 40.361l69.505 39.192-0.0806 82.992-0.0806 82.992-15.84 8.9675c-16.981 9.6135-40.253 22.817-57.6 32.679-5.896 3.3522-12.622 7.218-14.946 8.5909-2.3244 1.3728-5.6364 3.242-7.36 4.1538-1.7236 0.91176-3.8538 2.1225-4.7338 2.6905-2.1205 1.3687-10.635 6.2294-10.912 6.2294-0.11965 0-0.95347 0.4559-1.8529 1.0131-0.89947 0.55722-4.2274 2.5026-7.3954 4.3232-3.168 1.8205-5.976 3.4495-6.24 3.62-0.264 0.17046-1.38 0.81706-2.48 1.4368-1.1 0.61978-2.9488 1.6668-4.1086 2.3268-1.1597 0.66-2.9237 1.6411-3.92 2.1802-0.99629 0.53911-2.5169 1.3671-3.3791 1.84-0.86221 0.47287-1.7982 0.85284-2.08 0.84436-0.28178-8e-3 -8.0003-4.3035-17.152-9.5445z" fill="#628eb9"/>
-  <path d="m155.66 327.1c-9.1418-5.2332-40.993-23.464-70.781-40.512l-54.16-30.997 0.0034-82.917 0.0034-82.916 69.948-39.84c38.471-21.912 70.35-40.039 70.842-40.282 0.87598-0.4327 2.3721 0.39113 72.289 39.805l71.394 40.247 0.0491 35.555c0.027 19.555 0.0797 54.563 0.11717 77.795 0.0374 23.232-0.0207 44.602-0.12915 47.488l-0.19717 5.2479-24 13.603c-13.2 7.4817-43.466 24.632-67.258 38.112s-43.659 24.833-44.149 25.229c-0.49054 0.396-1.1198 0.72-1.3984 0.72-0.27859 0-0.64333 0.12304-0.81053 0.27338-0.1672 0.15036-1.3924 0.86521-2.7226 1.5885l-2.4186 1.3151z" fill="#0073bd"/>
-  <path d="m178.7 332.95c0.33915-0.25658 0.69498-0.38816 0.79073-0.29242 0.20086 0.20087-0.61187 0.77207-1.0874 0.76423-0.176-3e-3 -0.0425-0.2152 0.29664-0.47181zm-71.097-47.105-64.4-37.003v-151.76l64.525-37.211c49.387-28.481 64.658-37.148 65.09-36.943 0.3103 0.14773 29.809 16.901 65.553 37.229l64.989 36.96 6.4e-4 75.84 6.4e-4 75.84-65.283 36.96c-35.906 20.328-65.461 36.989-65.679 37.025s-29.376-16.586-64.796-36.937zm13.041-29.231c3.8025-0.48409 9.2453-2.0461 13.058-3.7475 3.2004-1.4281 23.106-12.671 27.227-15.379 4.7612-3.1279 6.8245-9.3627 4.7522-14.36-1.7019-4.1042-4.5322-6.7893-8.1785-7.7588-2.0724-0.55102-5.8035-0.45862-7.4489 0.18447-0.776 0.3033-6.653 3.5694-13.06 7.258-6.407 3.6886-12.396 7.0484-13.309 7.4663-5.5116 2.5233-13.111 2.7508-18.666 0.55885-3.7691-1.4872-6.0089-2.8973-8.8041-5.5425-3.523-3.3339-5.7289-7.1535-6.9397-12.017-0.62704-2.5183-0.69522-3.4225-0.54292-7.2 0.15265-3.7861 0.29819-4.6608 1.1775-7.0777 1.4656-4.028 3.7338-7.5069 6.6567-10.21 2.199-2.0333 4.989-3.7431 24.877-15.245 12.32-7.1252 23.361-13.444 24.535-14.043 3.4213-1.7434 6.8171-2.4884 11.305-2.4803 3.5247 6e-3 5.697 0.31387 7.36 1.0419 4.3549 1.9066 5.7464 2.6431 7.52 3.9801 2.4515 1.848 4.0669 3.5358 5.6976 5.953 2.0749 3.0757 2.941 4.0811 4.6544 5.403 3.432 2.6478 8.3234 2.9627 12.827 0.82575 1.8109-0.85933 4.3727-3.5568 5.4595-5.7487 0.8729-1.7605 0.95217-2.1991 0.95432-5.28 2e-3 -3.1387-0.0658-3.4995-1.0316-5.4786-3.7748-7.7345-13.072-16.319-22.641-20.905-2.689-1.2889-9.7494-3.5358-12.64-4.0227-3.3571-0.56546-11.936-0.66217-15.2-0.17135-5.6085 0.84343-10.421 2.3034-15.106 4.583-3.8856 1.8905-47.814 27.455-50.703 29.507-14.242 10.117-22.168 27.534-20.461 44.962 0.63828 6.5138 2.0207 11.721 4.547 17.126 1.0413 2.2281 4.0964 7.3637 4.759 8 0.09164 0.088 0.59582 0.736 1.1204 1.44 2.909 3.9039 8.5259 8.7077 13.993 11.968 3.7707 2.2483 6.1335 3.2831 10.561 4.6253 7.6063 2.3059 13.671 2.8046 21.689 1.7838zm75.839-43.846c1.144-0.16217 2.296-0.33976 2.56-0.39465 3.8475-0.79992 6.7718-1.7107 10.23-3.1864 2.7942-1.1922 47.608-26.838 51.419-29.426 7.2548-4.9259 13.036-11.489 16.704-18.964 2.3914-4.8727 3.0244-6.5653 4.0093-10.72 1.2992-5.4808 1.5906-8.3212 1.3644-13.299-0.46696-10.277-2.6063-17.002-8.2906-26.061-2.5779-4.1083-5.1052-6.9983-9.3742-10.719-3.2507-2.8334-11.058-7.3237-15.023-8.6401-6.7299-2.2346-9.327-2.7103-15.68-2.8722-4.7897-0.12208-6.4269-0.02573-10.56 0.62156-3.2658 0.51144-9.655 2.6674-13.302 4.4884-0.95599 0.47738-6.9066 3.8411-13.223 7.4749-12.933 7.4397-14.292 8.4584-16.061 12.037-1.0353 2.0949-1.1544 2.6029-1.1744 5.0106-0.0187 2.249 0.11129 2.962 0.80921 4.4394 1.7987 3.8075 3.4003 5.5151 6.5062 6.937 2.2445 1.0276 5.7627 1.2549 8.4356 0.54497 1.13-0.30012 5.9986-2.9205 13.738-7.3941 15.649-9.0456 16.762-9.4902 23.712-9.4742 3.6949 9e-3 4.2319 0.0904 7.04 1.0726 5.3196 1.8607 8.7146 4.0602 11.701 7.5809 4.9675 5.8554 6.8721 13.311 5.4595 21.373-0.91435 5.218-4.3667 11.066-8.5085 14.412-1.2394 1.0014-11.971 7.4104-25.464 15.208-26.562 15.349-26.552 15.344-32.824 15.59-4.7001 0.18411-7.8561-0.41643-11.47-2.1827-5.1688-2.5259-8.2052-5.1439-10.972-9.4605-1.5439-2.4087-4.0922-4.8939-6.1447-5.9928-1.117-0.59799-1.8068-0.69352-4.9767-0.68923-3.42 5e-3 -3.8104 0.0707-5.525 0.93437-2.3032 1.1602-4.8051 3.7698-5.9245 6.1796-0.74464 1.603-0.85618 2.2547-0.86284 5.041-9e-3 3.7824 0.47917 5.0724 3.6985 9.7728 5.1463 7.5138 15.38 15.413 23.334 18.012 6.7656 2.2105 7.4278 2.3693 12.273 2.9418 3.6154 0.42722 8.5191 0.34952 12.367-0.19598zm118.87-23.331c0-9.944 0.0406-14.012 0.0902-9.04s0.0496 13.108 0 18.08-0.0902 0.904-0.0902-9.04z" fill="#064d90"/>
-  <path d="m178.56 333.12c0.264-0.17062 0.624-0.31021 0.8-0.31021s0.104 0.13959-0.16 0.31021-0.624 0.31021-0.8 0.31021-0.104-0.13959 0.16-0.31021zm-52.837-36.988c-25.588-14.693-54.619-31.354-64.515-37.024l-17.992-10.309 0.0026-75.84 0.0026-75.84 62.736-36.16c34.505-19.888 63.558-36.624 64.562-37.191l1.8254-1.0311 130.86 74.398v151.66l-64 36.254c-35.2 19.94-64.665 36.601-65.477 37.024l-1.477 0.76995zm-5.163-39.312c0.572-0.0991 1.436-0.23863 1.92-0.31011 3.108-0.45901 8.7511-2.2843 12.522-4.0502 4.9684-2.3268 25.625-14.436 27.446-16.089 2.2893-2.0788 3.8762-5.2839 4.1442-8.3706 0.16797-1.934 0.0794-2.5438-0.64836-4.4637-2.4302-6.411-7.7037-9.6278-13.932-8.4985-2.5617 0.46452-2.2569 0.30741-16.242 8.3715-12.775 7.3661-15.129 8.3965-20.049 8.7733-7.328 0.56126-14.855-2.2213-19.881-7.3498-5.9243-6.0451-8.1778-13.52-6.7329-22.334 0.99882-6.0925 5.2901-12.661 10.508-16.085 3.9211-2.5727 46.102-26.737 47.991-27.493 3.2092-1.2839 5.8633-1.7921 9.3542-1.7912 4.0614 9.6e-4 6.8116 0.58696 10.193 2.1715 5.149 2.4129 8.3529 5.1503 11.226 9.5914 1.8463 2.8541 4.5818 5.3092 6.8869 6.181 2.4238 0.91665 7.0934 0.74019 9.4007-0.35524 2.3941-1.1367 4.8424-3.5726 6.046-6.0156 0.90428-1.8354 1.0624-2.522 1.1546-5.0149 0.12936-3.4958-0.44261-5.2842-2.8896-9.0348-4.1813-6.4089-9.8138-11.657-17.161-15.99-7.1273-4.2034-14.497-6.275-23.618-6.639-6.6909-0.26702-15.041 1.3473-20.918 4.044-0.792 0.36341-1.8937 0.85265-2.4483 1.0872-1.8478 0.7815-45.981 26.377-49.224 28.547-1.7556 1.1753-4.6685 3.5561-6.473 5.2907-7.2447 6.964-11.928 15.19-14.243 25.021-1.021 4.3348-1.051 4.6618-1.0256 11.185 0.02208 5.6666 0.1381 7.2467 0.74014 10.08 3.073 14.462 11.205 25.621 24.354 33.416 2.6589 1.5765 5.8959 2.981 9.28 4.0266 1.848 0.57096 3.5836 1.1473 3.8568 1.2809 0.27324 0.13351 1.7852 0.40367 3.36 0.60037 1.5748 0.19669 3.2232 0.41188 3.6632 0.4782 1.1048 0.16651 10.164-0.0411 11.44-0.26216zm74.96-43.715c2.9786-0.37595 4.2374-0.64098 8-1.6843 5.2358-1.4518 7.7616-2.7311 24.309-12.312 8.3663-4.8441 18.811-10.891 23.211-13.438s9.008-5.3274 10.24-6.1789c11.376-7.863 18.728-19.699 21.149-34.049 0.87439-5.1818 0.44474-13.541-1.0052-19.557-1.8503-7.6767-7.1617-17.135-12.738-22.682-9.815-9.7644-22.816-15.16-36.206-15.025-7.8125 0.07872-15.284 1.915-22.404 5.5064-4.5951 2.3177-24.281 13.848-25.706 15.056-2.9127 2.47-4.7955 7.0316-4.413 10.692 0.2246 2.1489 1.8042 5.4947 3.5472 7.5137 1.8264 2.1155 4.639 3.3364 8.1474 3.5364 2.1457 0.12234 3.2709 0.0321 4.4632-0.35785 0.8768-0.28679 7.0416-3.6646 13.7-7.5063 12.435-7.175 14.129-8.0216 17.705-8.8484 3.5059-0.81054 10.313-0.55721 12.64 0.47039 0.352 0.15546 1.5182 0.62536 2.5916 1.0442 6.4442 2.5147 12.015 8.6963 14.197 15.755 1.4586 4.7174 1.1309 11.817-0.76016 16.471-1.8231 4.4867-5.7572 9.3458-9.4582 11.682-5.1502 3.2512-46.61 26.951-48.183 27.543-6.294 2.369-12.794 2.2482-18.728-0.34812-4.4732-1.9571-8.6052-5.3296-11.092-9.0532-2.6318-3.9405-4.6266-5.8474-7.2634-6.9436-1.6232-0.6748-4.3696-0.87299-6.5693-0.4741-4.0244 0.72976-6.9074 2.8371-8.8464 6.4663-1.2337 2.3092-1.2482 2.3772-1.2482 5.8564 0 3.314 0.0602 3.643 1.0286 5.6219 3.0158 6.1626 9.9029 13.26 17.611 18.148 5.2104 3.3046 12.886 6.0983 18.961 6.9015 3.7694 0.49838 9.9788 0.58992 13.12 0.19343z" fill="#0a3d81"/>
-  <path d="m178.56 333.12c0.264-0.17062 0.624-0.31021 0.8-0.31021s0.104 0.13959-0.16 0.31021-0.624 0.31021-0.8 0.31021-0.104-0.13959 0.16-0.31021zm-51.697-36.376c-24.982-14.348-53.991-31.009-64.463-37.024l-19.04-10.937v-151.64l64.475-37.183c57.53-33.177 64.549-37.143 65.158-36.812 0.37584 0.20399 29.79 16.926 65.365 37.16l64.682 36.789v151.75l-64.37 36.454c-35.403 20.05-64.823 36.695-65.377 36.99l-1.0077 0.53549zm-6.3827-39.921c3.5511-0.50499 3.6793-0.53097 6.4-1.2972 6.1679-1.7369 7.8837-2.5789 22.937-11.256 12.458-7.1812 13.824-8.1918 15.382-11.383 2.3769-4.8687 1.8345-9.167-1.7467-13.843-1.083-1.4139-1.8733-2.0406-3.7551-2.9772-2.2488-1.1194-2.5561-1.1864-5.44-1.1864-1.8812 0-3.4873 0.17296-4.1766 0.4498-0.616 0.24739-6.4968 3.5453-13.068 7.3287-12.153 6.9966-14.1 7.9767-17.653 8.8869-3.4513 0.88417-11.732 0.58824-13.279-0.47456-0.176-0.12091-1.184-0.5589-2.24-0.97332-8.4178-3.3035-14.559-11.884-15.087-21.079-0.20199-3.5173 0.38276-7.7989 1.4513-10.627 1.5757-4.1697 4.8108-8.4364 8.476-11.179 2.381-1.7814 46.375-27.166 48.852-28.188 4.4932-1.8534 9.9188-2.4012 14.388-1.4525 2.5665 0.54482 7.2994 2.5581 9.44 4.0157 2.2884 1.5581 5.1948 4.6026 6.976 7.3073 1.8432 2.7988 4.0274 4.9393 5.9816 5.8619 1.3724 0.64791 4.4236 1.2564 5.4424 1.0853 0.264-0.0443 1.2-0.18469 2.08-0.3119 6.3468-0.91744 11.117-7.6557 10.062-14.211-0.39014-2.4225-0.98586-3.8328-2.7877-6.5995-5.6098-8.6139-15.711-16.659-24.714-19.682-6.8735-2.3083-9.7538-2.8435-16.32-3.0323-8.1014-0.23298-16.408 1.5952-23.459 5.1631-2.5446 1.2876-46.904 26.95-48.537 28.078-8.9208 6.169-15.413 14.253-19.237 23.954-2.8036 7.1128-3.8714 17.142-2.7 25.359 1.5924 11.17 6.4131 20.609 14.561 28.508 2.9664 2.8761 4.8907 4.3509 9.047 6.9337 4.3353 2.694 6.8667 3.7811 13.204 5.6704 5.0764 1.5133 13.483 2.0086 19.52 1.15zm74.88-43.706c5.1289-0.48179 10.195-1.9085 15.36-4.3259 3.3992-1.5909 47.206-26.92 50.857-29.406 3.668-2.4972 9.3718-8.1599 12.027-11.941 5.9939-8.5337 9.276-18.628 9.276-28.528 0-11.607-2.3635-19.235-9.2279-29.784-1.7429-2.6783-6.5471-7.8151-9.3321-9.9781-5.1899-4.0309-10.125-6.669-15.84-8.4667-1.936-0.60904-3.9634-1.2474-4.5052-1.4185-2.838-0.89641-11.96-1.4052-16.455-0.91776-5.0024 0.54257-11.346 2.3091-15.68 4.3664-4.5337 2.1522-26.239 14.864-27.844 16.306-1.0668 0.95916-1.9807 2.2244-2.7912 3.8643-1.1266 2.2794-1.2051 2.628-1.2051 5.3506 0 2.684 0.0862 3.0822 1.0991 5.0788 0.60449 1.1915 1.6383 2.7789 2.2973 3.5276 1.2752 1.4487 4.1964 3.1717 6.0397 3.5624 2.03 0.43024 5.5625 0.22679 7.2249-0.41613 0.86846-0.33586 6.5722-3.5055 12.675-7.0436 13.475-7.8122 13.62-7.8863 17.307-8.8743 4.6847-1.2551 9.8914-1.0685 14.243 0.5104 8.8067 3.195 14.73 9.8624 16.526 18.602 0.62287 3.0307 0.63627 5.9564 0.0438 9.5696-0.98476 6.0061-4.6535 11.897-9.7769 15.698-1.9731 1.464-46.768 27.21-48.727 28.006-3.2689 1.3283-5.5787 1.7656-9.3295 1.7663-4.0354 6.4e-4 -6.6845-0.52381-9.8739-1.9553-4.9474-2.2206-8.7826-5.5147-11.871-10.197-1.587-2.4055-4.2448-4.8476-6.2472-5.7403-1.8375-0.81909-7.076-0.72884-9.325 0.16066-2.505 0.99079-5.0885 3.3985-6.3102 5.8808-1.9115 3.884-1.9542 7.7321-0.12852 11.588 1.8304 3.8658 7.8021 10.946 12.053 14.29 2.286 1.7985 8.2666 5.587 10.438 6.6119 2.6147 1.2343 9.643 3.4359 12.442 3.8975 1.144 0.18864 3.448 0.43578 5.12 0.5492s3.0658 0.22626 3.0974 0.25077c0.0944 0.0732 2.9331-0.12696 6.3426-0.44724z" fill="#0b2f6e"/>
-  <path d="m178.79 333.08c0.21707-0.21869 0.47528-0.31703 0.5738-0.2185 0.0985 0.0985-0.0791 0.27747-0.39466 0.39763-0.45607 0.17367-0.49282 0.1369-0.17914-0.17913zm-54.315-37.764c-26.312-15.118-55.292-31.766-64.4-36.994l-16.56-9.5068 7.11e-4 -75.848 7.13e-4 -75.848 64.079-36.956c35.244-20.326 64.367-36.957 64.719-36.958 0.352-8.32e-4 29.904 16.629 65.67 36.956l65.03 36.958 7e-3 75.84 7e-3 75.84-65 36.8c-35.75 20.24-65.161 36.891-65.357 37.002-0.1969 0.1111-21.886-12.167-48.198-27.286zm-4.4667-38.355c4.1068-0.47783 9.8571-2.0634 13.689-3.7745 3.3096-1.4778 26.013-14.387 28.159-16.012 2.6654-2.0175 4.8589-6.618 4.8589-10.191 0-2.254-1.4128-5.7034-3.3402-8.1551-2.1031-2.6752-4.6911-3.8787-8.7197-4.0549-2.3397-0.10233-3.3388-6e-3 -4.5126 0.4359-0.82915 0.31203-6.6195 3.5221-12.868 7.1335s-12.368 7.0292-13.6 7.5952c-3.0089 1.3823-6.2363 2.0614-9.797 2.0614-3.8749 0-6.4826-0.48022-9.5676-1.7619-10.774-4.4762-16.734-14.626-15.356-26.153 0.70321-5.8836 3.3097-11.002 7.6429-15.009 2.1471-1.9853 5.1091-3.8004 24.838-15.221 12.32-7.1316 23.552-13.511 24.96-14.176 3.6875-1.7423 6.3914-2.3435 10.56-2.3482 3.276-4e-3 6.651 0.46365 7.8209 1.0829 0.27449 0.14528 1.5563 0.73277 2.8484 1.3055 4.3116 1.9112 7.8018 4.9697 10.856 9.5134 2.0291 3.0183 4.8225 5.4974 6.8946 6.1189 7.6598 2.2973 14.989-2.1908 16.547-10.133 0.76318-3.8907-0.48757-7.5634-4.3517-12.778-2.4538-3.3116-5.1524-6.1558-8.2953-8.7429-2.2222-1.8292-6.9609-5.1386-7.3579-5.1386-0.11374 0-0.80875-0.40224-1.5445-0.89387-1.5332-1.0245-2.4315-1.4397-5.3376-2.4668-4.0408-1.4281-7.2275-2.3398-9.6-2.7464-2.6008-0.44577-11.659-0.58688-15.079-0.23492-3.1807 0.32735-9.0309 1.9677-12.878 3.6109-3.9367 1.6815-48.711 27.433-53.167 30.578-9.3672 6.6123-16.65 17.569-19.351 29.111-1.3092 5.5951-1.5302 8.0495-1.2538 13.922 0.37281 7.9226 1.65 13.074 4.9506 19.968 4.0418 8.4422 10.585 15.494 19.338 20.84 3.5385 2.1613 5.081 2.9172 8 3.9208 5.6534 1.9436 9.0596 2.7058 13.44 3.0075 1.496 0.10304 2.7637 0.22411 2.8171 0.26904 0.16922 0.14235 4.917-0.15435 7.7562-0.48469zm75.187-43.715c3.3928-0.39536 3.9111-0.49324 7.3972-1.3969 2.883-0.7473 6.5656-2.1624 9.5628-3.6747 2.8657-1.4459 46.47-26.692 48.604-28.14 6.2537-4.2457 11.95-10.379 15.632-16.83 2.9658-5.1962 5.1788-11.72 6.189-18.244 0.5624-3.6322 0.19549-13.46-0.64511-17.28-1.3632-6.1943-2.6685-9.3874-6.4203-15.706-2.3807-4.0094-4.182-6.3534-7.1213-9.2673-3.7406-3.7082-9.6434-7.8627-14.299-10.064-2.2742-1.0752-10.211-3.5658-12.66-3.9727-9.9971-1.6612-20.666-0.18706-29.76 4.1118-3.5543 1.6803-25.64 14.363-27.285 15.668-1.4569 1.1562-3.1297 3.7784-3.9354 6.1689-1.0484 3.1107-0.80453 5.8797 0.79533 9.0317 1.5891 3.1307 3.2279 4.8085 5.8992 6.0394 1.8498 0.85236 2.4998 0.98279 5.0059 1.0044 2.1134 0.0183 3.3059-0.13808 4.48-0.58741 0.88-0.33677 6.64-3.5224 12.8-7.0791 13.293-7.6753 13.802-7.9394 17.021-8.8369 1.9644-0.54769 3.3546-0.69538 6.499-0.69042 4.9645 8e-3 7.0014 0.50599 11.649 2.849 6.7402 3.3979 11.513 9.8557 12.859 17.4 0.54842 3.0736 0.54821 4.9089-9.6e-4 8.4895-0.96673 6.3033-4.2315 11.833-9.2002 15.582-2.3581 1.7795-44.807 26.451-48.416 28.14-4.5278 2.1187-10.525 2.7746-15.664 1.713-4.1197-0.85095-9.8421-4.0722-12.872-7.2459-0.72954-0.76412-2.0576-2.4884-2.9512-3.8317-1.7567-2.6407-4.2025-5.0388-6.2657-6.1434-1.1174-0.59821-1.8057-0.69339-4.9767-0.68827-3.3538 5e-3 -3.8392 0.0836-5.4758 0.88232-4.8689 2.3761-8.0246 8.571-7.0154 13.772 1.6832 8.6737 15.402 21.888 26.731 25.748 6.3043 2.148 8.0522 2.5373 15.2 3.3861 1.2152 0.1443 6.322-0.0376 8.64-0.30768z" fill="#121657"/>
-  <path d="m126.95 296.68c-24.775-14.227-45.124-25.944-45.218-26.039-0.19186-0.19187-8.2563-24.115-9.898-29.362-0.57816-1.848-1.9326-5.9376-3.0098-9.0881-1.0772-3.1504-1.9123-5.7744-1.8557-5.8309 0.05656-0.0566 0.50549 0.79308 0.99762 1.8881 3.9329 8.7509 10.68 16.29 19.467 21.753 3.9857 2.4779 5.6638 3.235 11.17 5.0392 5.0976 1.6704 8.2763 2.2092 14.033 2.3787 3.2834 0.0967 9.6016-0.43262 11.193-0.93758 0.32797-0.1041 0.87518-0.24297 1.216-0.30861 1.6888-0.32524 5.653-1.6594 8.3816-2.8209 1.6774-0.71402 8.6658-4.5235 15.53-8.4656 13.773-7.9099 14.759-8.6559 16.614-12.567 0.88647-1.8696 0.98623-2.3875 0.98623-5.12 0-2.7944-0.086-3.2159-1.0643-5.2167-1.5039-3.0757-4.1151-5.6457-6.7136-6.6077-2.6553-0.98303-6.5224-1.0296-8.8962-0.10708-0.89873 0.34927-7.0187 3.7458-13.6 7.5478-14.9 8.608-15.843 8.9819-22.686 8.9962-4.2943 9e-3 -4.8308-0.058-7.2-0.89791-5.5178-1.9562-9.3678-4.5932-12.442-8.5218-3.9997-5.1118-5.7513-11.425-4.9884-17.981 0.42043-3.613 0.97074-5.4365 2.5868-8.5716 1.6492-3.1993 3.6272-5.6535 6.2665-7.7749 2.329-1.872 46.796-27.733 49.537-28.809 3.8954-1.5298 5.5504-1.8014 10.4-1.7068 4.4984 0.0878 4.7318 0.12675 7.6487 1.2771 5.743 2.265 9.5464 5.2635 12.713 10.023 1.9882 2.9881 4.356 5.2766 6.5181 6.2998 1.1833 0.55995 2.039 0.68183 4.8 0.68361 3.1371 2e-3 3.5002-0.0663 5.4741-1.0297 3.3998-1.6593 5.863-4.7882 6.8729-8.7303 1.2684-4.9512-0.35946-9.2366-6.107-16.077-2.572-3.0609-3.7282-4.2173-6.5075-6.5083l-2.3475-1.935-1.4216-4.1363c-2.8848-8.3934-4.6031-13.683-4.4836-13.803 0.0675-0.0675 0.55794 0.64839 1.0898 1.5909 1.9976 3.5396 5.1618 5.3387 9.8427 5.5964 2.5446 0.14009 3.1217 0.066 4.8-0.6166 1.0492-0.42672 7.1637-3.8039 13.588-7.5049 12.311-7.0925 13.763-7.826 17.014-8.5922 3.4029-0.80221 10.692-0.55524 12.906 0.43729 0.352 0.15778 1.4293 0.5962 2.3941 0.97427 6.4285 2.5192 12.051 8.5575 14.078 15.119 1.5465 5.0069 1.465 11.512-0.19978 15.939-1.806 4.8033-5.5647 9.5907-9.7118 12.37-0.792 0.53077-11.52 6.7804-23.84 13.888-26.639 15.369-26.249 15.191-33.28 15.154-5.2371-0.0272-6.7766-0.37634-11.072-2.5107-4.4162-2.1944-7.3147-4.724-10.002-8.7292-1.7502-2.6084-2.4699-3.4235-4.3936-4.976-2.0929-1.6891-3.7945-2.2275-7.0122-2.2187-4.9449 0.0135-8.8012 2.2474-10.955 6.3463-3.033 5.7719-2.2334 10.518 2.9292 17.386 2.1632 2.878 6.1142 6.9924 8.8597 9.226 2.346 1.9086 7.2746 5.0348 9.9075 6.2842 3.4181 1.622 10.818 3.9016 14.059 4.3307 5.8606 0.77607 13.337 0.57808 17.92-0.47454 3.1808-0.73055 8.0537-2.3464 10.4-3.4487 4.0223-1.8896 49.258-28.109 52.111-30.204 7.7668-5.7042 14.4-14.539 17.733-23.621 0.7498-2.0426 2.0882-7.3736 2.6513-10.56 0.50265-2.8447 0.1334-12.301-0.66224-16.96-0.16736-0.97992 2.6949 6.7653 4.3163 11.68 0.49356 1.496 4.4459 13.448 8.783 26.56l7.8856 23.84-0.045 58.88-65.207 36.88c-35.864 20.284-65.342 36.877-65.507 36.874-0.16469-3e-3 -20.57-11.646-45.346-25.873z" fill="#0d1041"/>
- </g>
-</svg>
diff --git a/script/makeinstaller.sh b/script/makeinstaller.sh
index 1e84dc88..eff94639 100755
--- a/script/makeinstaller.sh
+++ b/script/makeinstaller.sh
@@ -5,8 +5,6 @@ set -e # stop on error
 
 command -v makensis > /dev/null 2>&1 || { echo >&2 "makensis is required to build the installer. Aborting."; exit 1; }
 command -v pynsist > /dev/null 2>&1 || { echo >&2 "pynsist is required to build the installer. Aborting."; exit 1; }
-command -v convert > /dev/null 2>&1 || { echo >&2 "imagemagick is required to build the installer. Aborting."; exit 1; }
-command -v inkscape > /dev/null 2>&1 || { echo >&2 "inkscape is required to build the installer. Aborting."; exit 1; }
 
 # For travis nightly builds generate a version number with commit hash
 STREAMLINK_VERSION=$(python setup.py --version)
@@ -20,10 +18,9 @@ build_dir="$(pwd)/build"
 build_dir_plugins="${build_dir}/lib/streamlink/plugins"
 nsis_dir="${build_dir}/nsis"
 files_dir="${build_dir}/files"
-icons_dir="${files_dir}/icons"
 # get the dist directory from an environment variable, but default to the build/nsis directory
 dist_dir="${STREAMLINK_INSTALLER_DIST_DIR:-$nsis_dir}"
-mkdir -p "${build_dir}" "${dist_dir}" "${nsis_dir}" "${files_dir}" "${icons_dir}"
+mkdir -p "${build_dir}" "${dist_dir}" "${nsis_dir}" "${files_dir}"
 
 echo "Building streamlink-${STREAMLINK_VERSION} package..." 1>&2
 python setup.py build 1>&2
@@ -46,14 +43,6 @@ do
     touch "${build_dir_plugins}/$i.py"
 done
 
-echo "Creating images" 1>&2
-# Create images
-for size in 16 32 48 256; do
-  inkscape --without-gui --export-png="${icons_dir}/icon-${size}.png" -w ${size} -h ${size} icon.svg
-done
-convert "${icons_dir}"/icon-{16,32,48,256}.png "${icons_dir}/icon.ico"
-
-
 echo "Building ${STREAMLINK_INSTALLER} installer..." 1>&2
 
 cat > "${build_dir}/streamlink.cfg" <<EOF
@@ -61,7 +50,7 @@ cat > "${build_dir}/streamlink.cfg" <<EOF
 name=Streamlink
 version=${STREAMLINK_VERSION}
 entry_point=streamlink_cli.main:main
-icon=${icons_dir}/icon.ico
+icon=../win32/doggo.ico
 
 [Python]
 version=3.6.6
diff --git a/src/streamlink/plugins/afreeca.py b/src/streamlink/plugins/afreeca.py
index 319bc4f4..a9fec3f6 100644
--- a/src/streamlink/plugins/afreeca.py
+++ b/src/streamlink/plugins/afreeca.py
@@ -19,7 +19,7 @@ QUALITY_WEIGHTS = {
     "sd": 480
 }
 
-_url_re = re.compile(r"https?://play\.afreecatv\.com/(?P<username>\w+)(?:/\d+)?")
+_url_re = re.compile(r"http(s)?://(?P<cdn>\w+\.)?afreeca(tv)?\.com/(?P<username>\w+)(/\d+)?")
 
 _channel_schema = validate.Schema(
     {
@@ -86,6 +86,10 @@ class AfreecaTV(Plugin):
         return self.session.http.json(res, schema=_channel_schema)
 
     def _get_hls_key(self, broadcast, username, quality):
+        headers = {
+            "Referer": self.url
+        }
+
         data = {
             "bid": username,
             "bno": broadcast,
@@ -93,7 +97,7 @@ class AfreecaTV(Plugin):
             "quality": quality,
             "type": "pwd"
         }
-        res = self.session.http.post(CHANNEL_API_URL, data=data)
+        res = self.session.http.post(CHANNEL_API_URL, data=data, headers=headers)
         return self.session.http.json(res, schema=_channel_schema)
 
     def _get_stream_info(self, broadcast, quality, cdn, rmd):
@@ -135,7 +139,6 @@ class AfreecaTV(Plugin):
             return False
 
     def _get_streams(self):
-        self.session.http.headers.update({"Referer": self.url})
         if not self.session.get_option("hls-segment-ignore-names"):
             ignore_segment = ["preloading"]
             self.session.set_option("hls-segment-ignore-names", ignore_segment)
diff --git a/src/streamlink/plugins/filmon.py b/src/streamlink/plugins/filmon.py
index ffc0fbe6..1a2e77eb 100644
--- a/src/streamlink/plugins/filmon.py
+++ b/src/streamlink/plugins/filmon.py
@@ -164,7 +164,7 @@ class Filmon(Plugin):
             |
             (?:tv/)channel/(?:export\?)?
             |
-            tv/(?!channel)
+            tv/(?!channel/)
             |
             channel/
             |
diff --git a/win32/LICENSE.txt b/win32/LICENSE.txt
index a299fcc1..3818abb3 100644
--- a/win32/LICENSE.txt
+++ b/win32/LICENSE.txt
@@ -1,4 +1,6 @@
 Streamlink is distributed with some bundles python libraries and some compiled binaries.
+Streamlink also makes use of an image (doggo.ico) created by Jinho Jung, distributed under the CC BY-SA 2.0 license.
+
 
 Python 3.5.2 License
 ====================
@@ -660,3 +662,56 @@ whether future versions of the GNU Lesser General Public License shall
 apply, that proxy's public statement of acceptance of any version is
 permanent authorization for you to choose that version for the
 Library.
+
+doggo.ico License
+=================
+THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE COMMONS PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED.
+
+BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE TO BE BOUND BY THE TERMS OF THIS LICENSE. THE LICENSOR GRANTS YOU THE RIGHTS CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND CONDITIONS.
+
+1. Definitions
+
+"Collective Work" means a work, such as a periodical issue, anthology or encyclopedia, in which the Work in its entirety in unmodified form, along with a number of other contributions, constituting separate and independent works in themselves, are assembled into a collective whole. A work that constitutes a Collective Work will not be considered a Derivative Work (as defined below) for the purposes of this License.
+"Derivative Work" means a work based upon the Work or upon the Work and other pre-existing works, such as a translation, musical arrangement, dramatization, fictionalization, motion picture version, sound recording, art reproduction, abridgment, condensation, or any other form in which the Work may be recast, transformed, or adapted, except that a work that constitutes a Collective Work will not be considered a Derivative Work for the purpose of this License. For the avoidance of doubt, where the Work is a musical composition or sound recording, the synchronization of the Work in timed-relation with a moving image ("synching") will be considered a Derivative Work for the purpose of this License.
+"Licensor" means the individual or entity that offers the Work under the terms of this License.
+"Original Author" means the individual or entity who created the Work.
+"Work" means the copyrightable work of authorship offered under the terms of this License.
+"You" means an individual or entity exercising rights under this License who has not previously violated the terms of this License with respect to the Work, or who has received express permission from the Licensor to exercise rights under this License despite a previous violation.
+"License Elements" means the following high-level license attributes as selected by Licensor and indicated in the title of this License: Attribution, ShareAlike.
+2. Fair Use Rights. Nothing in this license is intended to reduce, limit, or restrict any rights arising from fair use, first sale or other limitations on the exclusive rights of the copyright owner under copyright law or other applicable laws.
+
+3. License Grant. Subject to the terms and conditions of this License, Licensor hereby grants You a worldwide, royalty-free, non-exclusive, perpetual (for the duration of the applicable copyright) license to exercise the rights in the Work as stated below:
+
+to reproduce the Work, to incorporate the Work into one or more Collective Works, and to reproduce the Work as incorporated in the Collective Works;
+to create and reproduce Derivative Works;
+to distribute copies or phonorecords of, display publicly, perform publicly, and perform publicly by means of a digital audio transmission the Work including as incorporated in Collective Works;
+to distribute copies or phonorecords of, display publicly, perform publicly, and perform publicly by means of a digital audio transmission Derivative Works.
+For the avoidance of doubt, where the work is a musical composition:
+
+Performance Royalties Under Blanket Licenses. Licensor waives the exclusive right to collect, whether individually or via a performance rights society (e.g. ASCAP, BMI, SESAC), royalties for the public performance or public digital performance (e.g. webcast) of the Work.
+Mechanical Rights and Statutory Royalties. Licensor waives the exclusive right to collect, whether individually or via a music rights society or designated agent (e.g. Harry Fox Agency), royalties for any phonorecord You create from the Work ("cover version") and distribute, subject to the compulsory license created by 17 USC Section 115 of the US Copyright Act (or the equivalent in other jurisdictions).
+Webcasting Rights and Statutory Royalties. For the avoidance of doubt, where the Work is a sound recording, Licensor waives the exclusive right to collect, whether individually or via a performance-rights society (e.g. SoundExchange), royalties for the public digital performance (e.g. webcast) of the Work, subject to the compulsory license created by 17 USC Section 114 of the US Copyright Act (or the equivalent in other jurisdictions).
+The above rights may be exercised in all media and formats whether now known or hereafter devised. The above rights include the right to make such modifications as are technically necessary to exercise the rights in other media and formats. All rights not expressly granted by Licensor are hereby reserved.
+
+4. Restrictions.The license granted in Section 3 above is expressly made subject to and limited by the following restrictions:
+
+You may distribute, publicly display, publicly perform, or publicly digitally perform the Work only under the terms of this License, and You must include a copy of, or the Uniform Resource Identifier for, this License with every copy or phonorecord of the Work You distribute, publicly display, publicly perform, or publicly digitally perform. You may not offer or impose any terms on the Work that alter or restrict the terms of this License or the recipients' exercise of the rights granted hereunder. You may not sublicense the Work. You must keep intact all notices that refer to this License and to the disclaimer of warranties. You may not distribute, publicly display, publicly perform, or publicly digitally perform the Work with any technological measures that control access or use of the Work in a manner inconsistent with the terms of this License Agreement. The above applies to the Work as incorporated in a Collective Work, but this does not require the Collective Work apart from the Work itself to be made subject to the terms of this License. If You create a Collective Work, upon notice from any Licensor You must, to the extent practicable, remove from the Collective Work any reference to such Licensor or the Original Author, as requested. If You create a Derivative Work, upon notice from any Licensor You must, to the extent practicable, remove from the Derivative Work any reference to such Licensor or the Original Author, as requested.
+You may distribute, publicly display, publicly perform, or publicly digitally perform a Derivative Work only under the terms of this License, a later version of this License with the same License Elements as this License, or a Creative Commons iCommons license that contains the same License Elements as this License (e.g. Attribution-ShareAlike 2.0 Japan). You must include a copy of, or the Uniform Resource Identifier for, this License or other license specified in the previous sentence with every copy or phonorecord of each Derivative Work You distribute, publicly display, publicly perform, or publicly digitally perform. You may not offer or impose any terms on the Derivative Works that alter or restrict the terms of this License or the recipients' exercise of the rights granted hereunder, and You must keep intact all notices that refer to this License and to the disclaimer of warranties. You may not distribute, publicly display, publicly perform, or publicly digitally perform the Derivative Work with any technological measures that control access or use of the Work in a manner inconsistent with the terms of this License Agreement. The above applies to the Derivative Work as incorporated in a Collective Work, but this does not require the Collective Work apart from the Derivative Work itself to be made subject to the terms of this License.
+If you distribute, publicly display, publicly perform, or publicly digitally perform the Work or any Derivative Works or Collective Works, You must keep intact all copyright notices for the Work and give the Original Author credit reasonable to the medium or means You are utilizing by conveying the name (or pseudonym if applicable) of the Original Author if supplied; the title of the Work if supplied; to the extent reasonably practicable, the Uniform Resource Identifier, if any, that Licensor specifies to be associated with the Work, unless such URI does not refer to the copyright notice or licensing information for the Work; and in the case of a Derivative Work, a credit identifying the use of the Work in the Derivative Work (e.g., "French translation of the Work by Original Author," or "Screenplay based on original Work by Original Author"). Such credit may be implemented in any reasonable manner; provided, however, that in the case of a Derivative Work or Collective Work, at a minimum such credit will appear where any other comparable authorship credit appears and in a manner at least as prominent as such other comparable authorship credit.
+5. Representations, Warranties and Disclaimer
+
+UNLESS OTHERWISE AGREED TO BY THE PARTIES IN WRITING, LICENSOR OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND CONCERNING THE MATERIALS, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE, INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTIBILITY, FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF ERRORS, WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OF IMPLIED WARRANTIES, SO SUCH EXCLUSION MAY NOT APPLY TO YOU.
+
+6. Limitation on Liability. EXCEPT TO THE EXTENT REQUIRED BY APPLICABLE LAW, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL THEORY FOR ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY DAMAGES ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF LICENSOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+
+7. Termination
+
+This License and the rights granted hereunder will terminate automatically upon any breach by You of the terms of this License. Individuals or entities who have received Derivative Works or Collective Works from You under this License, however, will not have their licenses terminated provided such individuals or entities remain in full compliance with those licenses. Sections 1, 2, 5, 6, 7, and 8 will survive any termination of this License.
+Subject to the above terms and conditions, the license granted here is perpetual (for the duration of the applicable copyright in the Work). Notwithstanding the above, Licensor reserves the right to release the Work under different license terms or to stop distributing the Work at any time; provided, however that any such election will not serve to withdraw this License (or any other license that has been, or is required to be, granted under the terms of this License), and this License will continue in full force and effect unless terminated as stated above.
+8. Miscellaneous
+
+Each time You distribute or publicly digitally perform the Work or a Collective Work, the Licensor offers to the recipient a license to the Work on the same terms and conditions as the license granted to You under this License.
+Each time You distribute or publicly digitally perform a Derivative Work, Licensor offers to the recipient a license to the original Work on the same terms and conditions as the license granted to You under this License.
+If any provision of this License is invalid or unenforceable under applicable law, it shall not affect the validity or enforceability of the remainder of the terms of this License, and without further action by the parties to this agreement, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable.
+No term or provision of this License shall be deemed waived and no breach consented to unless such waiver or consent shall be in writing and signed by the party to be charged with such waiver or consent.
+This License constitutes the entire agreement between the parties with respect to the Work licensed here. There are no understandings, agreements or representations with respect to the Work not specified here. Licensor shall not be bound by any additional provisions that may appear in any communication from You. This License may not be modified without the mutual written agreement of the Licensor and You.

FilmOn.py  No plugin can handle
## Error Report

- [x] This is a bug report and I have read the post guidelines.

### Description

On the homepage of Film On the UK channels are played without problem.
Unfortunately not with Streamlink. Here it fails with the transmitter Channel4 and Channel5

### Expected / actual behavior

I enter the address and there is no picture.

streamlink http://www.filmon.com/tv/channel-4 best

### Reproduction steps / Explicit stream URLs to test

1.https: //www.filmon.com/tv/channel-4
2.https: //www.filmon.com/tv/channel-5

### log output

Not Work with Channel4:
WINDOWS> streamlink http://www.filmon.com/tv/channel-4  best
error: No plugin can handle URL: http://www.filmon.com/tv/channel-4

Work with More4
WINDOWS> streamlink https://www.filmon.com/tv/more4 best
[cli][info] Found matching plugin filmon for URL https://www.filmon.com/tv/more4
[cli][info] Available streams: low (worst), high (best)
[cli][info] Opening stream: high (hls-filmon)
[cli][info] Starting player: "C:\Program Files (x86)\VideoLAN\VLC\vlc.exe"
[cli][info] Player closed
[cli][info] Stream ended
[cli][info] Closing currently open stream...


### Additional comments, screenshots, etc.

https://i.ibb.co/FDs2QtX/film-on.jpg
diff --git a/tests/plugins/test_afreeca.py b/tests/plugins/test_afreeca.py
index ab7b98d6..fffc7cab 100644
--- a/tests/plugins/test_afreeca.py
+++ b/tests/plugins/test_afreeca.py
@@ -6,18 +6,15 @@ from streamlink.plugins.afreeca import AfreecaTV
 class TestPluginAfreecaTV(unittest.TestCase):
     def test_can_handle_url(self):
         should_match = [
+            "http://afreecatv.com/exampleuser",
+            "http://afreecatv.com/exampleuser/123123123",
             "http://play.afreecatv.com/exampleuser",
             "http://play.afreecatv.com/exampleuser/123123123",
-            "https://play.afreecatv.com/exampleuser",
         ]
         for url in should_match:
             self.assertTrue(AfreecaTV.can_handle_url(url))
 
         should_not_match = [
-            "http://afreeca.com/exampleuser",
-            "http://afreeca.com/exampleuser/123123123",
-            "http://afreecatv.com/exampleuser",
-            "http://afreecatv.com/exampleuser/123123123",
             "http://www.afreecatv.com.tw",
             "http://www.afreecatv.jp",
         ]
diff --git a/tests/plugins/test_filmon.py b/tests/plugins/test_filmon.py
index a62d407d..ab30fc5d 100644
--- a/tests/plugins/test_filmon.py
+++ b/tests/plugins/test_filmon.py
@@ -10,24 +10,25 @@ class TestPluginFilmon(unittest.TestCase):
             'http://www.filmon.tv/index/popout?channel_id=5510&quality=low',
             'http://www.filmon.tv/tv/channel/export?channel_id=5510&autoPlay=1',
             'http://www.filmon.tv/tv/channel/grandstand-show',
+            'http://www.filmon.tv/tv/channel-4',
             'https://www.filmon.com/tv/bbc-news',
             'https://www.filmon.tv/tv/55',
             'http://www.filmon.tv/vod/view/10250-0-crime-boss',
             'http://www.filmon.tv/group/comedy',
         ]
         for url in should_match:
-            self.assertTrue(Filmon.can_handle_url(url))
+            self.assertTrue(Filmon.can_handle_url(url), url)
 
     def test_can_handle_url_negative(self):
         should_not_match = [
             'https://example.com/index.html',
         ]
         for url in should_not_match:
-            self.assertFalse(Filmon.can_handle_url(url))
+            self.assertFalse(Filmon.can_handle_url(url), url)
 
     def _test_regex(self, url, expected):
         m = Filmon.url_re.match(url)
-        self.assertIsNotNone(m)
+        self.assertIsNotNone(m, url)
         # expected must return [is_group, channel, vod_id]
         self.assertEqual(expected, list(m.groups()))
 
@@ -51,6 +52,10 @@ class TestPluginFilmon(unittest.TestCase):
         self._test_regex('https://www.filmon.com/tv/bbc-news',
                          [None, 'bbc-news', None])
 
+    def test_regex_live_stream_tv_with_channel_in_name(self):
+        self._test_regex('https://www.filmon.com/tv/channel-4',
+                         [None, 'channel-4', None])
+
     def test_regex_live_stream_tv_number(self):
         self._test_regex('https://www.filmon.tv/tv/55',
                          [None, '55', None])

pip install -e .[dev]
parse_log_pytest
requirements.txt
pytest
apt-get update apt-get install -y gcc
3.7
dev-requirements.txt
pytest --no-header -rA --tb=line --color=no -p no:cacheprovider -W ignore::DeprecationWarning
certifi @ file:///croot/certifi_1671487769961/work/certifi
charset-normalizer==3.4.1
codecov==2.1.13
coverage==7.2.7
distlib==0.3.9
exceptiongroup==1.2.2
freezegun==1.5.1
idna==3.10
importlib-metadata==6.7.0
iniconfig==2.0.0
iso-639==0.4.5
iso3166==2.1.1
isodate==0.7.2
Jinja2==3.1.6
MarkupSafe==2.1.5
mock==5.2.0
packaging==24.0
pluggy==1.2.0
pycryptodome==3.22.0
pynsist==2.8
PySocks==1.7.1
pytest==7.4.4
pytest-cov==4.1.0
python-dateutil==2.9.0.post0
requests==2.31.0
requests-mock==1.12.1
requests_download==0.1.2
six==1.17.0
-e git+https://github.com/streamlink/streamlink.git@94a8a7301c45dfdee89dd7d4d14043438dda4b38#egg=streamlink
tomli==2.0.1
typing_extensions==4.7.1
urllib3==2.0.7
websocket-client==1.6.1
yarg==0.1.10
zipp==3.15.0

name: streamlink
channels:
  - defaults
  - https://repo.anaconda.com/pkgs/main
  - https://repo.anaconda.com/pkgs/r
  - conda-forge
dependencies:
  - _libgcc_mutex=0.1=main
  - _openmp_mutex=5.1=1_gnu
  - ca-certificates=2025.2.25=h06a4308_0
  - certifi=2022.12.7=py37h06a4308_0
  - ld_impl_linux-64=2.40=h12ee557_0
  - libffi=3.4.4=h6a678d5_1
  - libgcc-ng=11.2.0=h1234567_1
  - libgomp=11.2.0=h1234567_1
  - libstdcxx-ng=11.2.0=h1234567_1
  - ncurses=6.4=h6a678d5_0
  - openssl=1.1.1w=h7f8727e_0
  - pip=22.3.1=py37h06a4308_0
  - python=3.7.16=h7a1cb2a_0
  - readline=8.2=h5eee18b_0
  - setuptools=65.6.3=py37h06a4308_0
  - sqlite=3.45.3=h5eee18b_0
  - tk=8.6.14=h39e8969_0
  - wheel=0.38.4=py37h06a4308_0
  - xz=5.6.4=h5eee18b_1
  - zlib=1.2.13=h5eee18b_1
  - pip:
      - charset-normalizer==3.4.1
      - codecov==2.1.13
      - coverage==7.2.7
      - distlib==0.3.9
      - exceptiongroup==1.2.2
      - freezegun==1.5.1
      - idna==3.10
      - importlib-metadata==6.7.0
      - iniconfig==2.0.0
      - iso-639==0.4.5
      - iso3166==2.1.1
      - isodate==0.7.2
      - jinja2==3.1.6
      - markupsafe==2.1.5
      - mock==5.2.0
      - packaging==24.0
      - pluggy==1.2.0
      - pycryptodome==3.22.0
      - pynsist==2.8
      - pysocks==1.7.1
      - pytest==7.4.4
      - pytest-cov==4.1.0
      - python-dateutil==2.9.0.post0
      - requests==2.31.0
      - requests-download==0.1.2
      - requests-mock==1.12.1
      - six==1.17.0
      - tomli==2.0.1
      - typing-extensions==4.7.1
      - urllib3==2.0.7
      - websocket-client==1.6.1
      - yarg==0.1.10
      - zipp==3.15.0
prefix: /opt/conda/envs/streamlink

tests/plugins/test_afreeca.py::TestPluginAfreecaTV::test_can_handle_url tests/plugins/test_filmon.py::TestPluginFilmon::test_can_handle_url tests/plugins/test_filmon.py::TestPluginFilmon::test_regex_live_stream_tv_with_channel_in_name
tests/plugins/test_filmon.py::TestPluginFilmon::test_can_handle_url_negative tests/plugins/test_filmon.py::TestPluginFilmon::test_regex_group tests/plugins/test_filmon.py::TestPluginFilmon::test_regex_live_stream_channel tests/plugins/test_filmon.py::TestPluginFilmon::test_regex_live_stream_export tests/plugins/test_filmon.py::TestPluginFilmon::test_regex_live_stream_index_popout tests/plugins/test_filmon.py::TestPluginFilmon::test_regex_live_stream_tv tests/plugins/test_filmon.py::TestPluginFilmon::test_regex_live_stream_tv_channel tests/plugins/test_filmon.py::TestPluginFilmon::test_regex_live_stream_tv_number tests/plugins/test_filmon.py::TestPluginFilmon::test_regex_vod
src/streamlink/plugins/filmon.py docs/plugin_matrix.rst .travis.yml src/streamlink/plugins/afreeca.py NOTICE script/makeinstaller.sh docs/index.rst win32/LICENSE.txt icon.svg
src/streamlink/plugins/filmon.py docs/plugin_matrix.rst .travis.yml src/streamlink/plugins/afreeca.py NOTICE script/makeinstaller.sh docs/index.rst win32/LICENSE.txt icon.svg