diff --git a/app/src/main/java/io/lbry/browser/utils/LbryUri.java b/app/src/main/java/io/lbry/browser/utils/LbryUri.java
index d903cdb5..01ba875b 100644
--- a/app/src/main/java/io/lbry/browser/utils/LbryUri.java
+++ b/app/src/main/java/io/lbry/browser/utils/LbryUri.java
@@ -1,5 +1,7 @@
 package io.lbry.browser.utils;
 
+import java.io.UnsupportedEncodingException;
+import java.net.URLDecoder;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.regex.Matcher;
@@ -8,6 +10,8 @@ import java.util.regex.Pattern;
 import io.lbry.browser.exceptions.LbryUriException;
 import lombok.Data;
 
+import static org.apache.commons.codec.CharEncoding.UTF_8;
+
 @Data
 public class LbryUri {
     public static final String LBRY_TV_BASE_URL = "https://lbry.tv/";
@@ -117,10 +121,17 @@ public class LbryUri {
             }
         }
 
-        String streamOrChannelName = components.get(2);
+        String streamOrChannelName = null;
+        String possibleStreamName = null;
+        try {
+            // Using java.net.URLDecoder to be able to quickly unit test
+            streamOrChannelName = URLDecoder.decode(components.get(2), UTF_8);
+            possibleStreamName = URLDecoder.decode(components.get(6), UTF_8);
+        } catch (UnsupportedEncodingException e) {
+            e.printStackTrace();
+        }
         String primaryModSeparator = components.get(3);
         String primaryModValue = components.get(4);
-        String possibleStreamName = components.get(6);
         String secondaryModSeparator = components.get(7);
         String secondaryModValue = components.get(8);
 
diff --git a/app/src/test/java/io/lbry/browser/utils/LbryUriTest.java b/app/src/test/java/io/lbry/browser/utils/LbryUriTest.java
index 1a5730e6..2a3a3a72 100644
--- a/app/src/test/java/io/lbry/browser/utils/LbryUriTest.java
+++ b/app/src/test/java/io/lbry/browser/utils/LbryUriTest.java
@@ -113,6 +113,33 @@ public class LbryUriTest {
         assertEquals(expectedForChannel, obtained);
     }
 
+    @Test
+    public void parseLbryTvWithEncodedChars() {
+        LbryUri obtained = new LbryUri();
+
+        try {
+            obtained = LbryUri.parse("https://lbry.tv/@Content_I_Like:1/DR.-ASTRID-ST%C3%9CCKELBERGER:2",false);
+        } catch (LbryUriException e) {
+            e.printStackTrace();
+        }
+
+        expected = new LbryUri();
+        expected.setChannelName("@Content_I_Like");
+        expected.setStreamName("DR.-ASTRID-STÜCKELBERGER");
+
+        try {
+            LbryUri.UriModifier primaryMod = LbryUri.UriModifier.parse("#", "1");
+            LbryUri.UriModifier secondaryMod = LbryUri.UriModifier.parse("#", "2");
+            expected.setChannelClaimId(primaryMod.getClaimId());
+            expected.setStreamClaimId(secondaryMod.getClaimId());
+        } catch (LbryUriException e) {
+            e.printStackTrace();
+        }
+
+        assertEquals(expected, obtained);
+
+    }
+
     @Test
     public void lbryToTvString() {
         LbryUri obtained = new LbryUri();