ValueError from bad audio tags
audio/tags.py:

> def convert_taglist(taglist):
> ...
> date = datetime.date(
>                     value.get_year(), value.get_month(), value.get_day())

This raises a ValueError that is not catched when audio track has badly set year. 
I suggest that if the year exceeds datetime.MAXYEAR then use datetime.MAXYEAR or 0 as the audio itself is probably not broken.

diff --git a/mopidy/audio/tags.py b/mopidy/audio/tags.py
index 5ae86468..7fabefd6 100644
--- a/mopidy/audio/tags.py
+++ b/mopidy/audio/tags.py
@@ -44,10 +44,15 @@ gstreamer-GstTagList.html
             value = taglist.get_value_index(tag, i)
 
             if isinstance(value, GLib.Date):
-                date = datetime.date(
-                    value.get_year(), value.get_month(), value.get_day())
-                result[tag].append(date.isoformat().decode('utf-8'))
-            if isinstance(value, Gst.DateTime):
+                try:
+                    date = datetime.date(
+                        value.get_year(), value.get_month(), value.get_day())
+                    result[tag].append(date.isoformat().decode('utf-8'))
+                except ValueError:
+                    logger.debug(
+                        'Ignoring dodgy date value: %d-%d-%d',
+                        value.get_year(), value.get_month(), value.get_day())
+            elif isinstance(value, Gst.DateTime):
                 result[tag].append(value.to_iso8601_string().decode('utf-8'))
             elif isinstance(value, bytes):
                 result[tag].append(value.decode('utf-8', 'replace'))
diff --git a/tests/audio/test_tags.py b/tests/audio/test_tags.py
index 01475124..d85bcc12 100644
--- a/tests/audio/test_tags.py
+++ b/tests/audio/test_tags.py
@@ -44,6 +44,14 @@ class TestConvertTaglist(object):
         assert isinstance(result[Gst.TAG_DATE][0], compat.text_type)
         assert result[Gst.TAG_DATE][0] == '2014-01-07'
 
+    def test_date_tag_bad_value(self):
+        date = GLib.Date.new_dmy(7, 1, 10000)
+        taglist = self.make_taglist(Gst.TAG_DATE, [date])
+
+        result = tags.convert_taglist(taglist)
+
+        assert len(result[Gst.TAG_DATE]) == 0
+
     def test_date_time_tag(self):
         taglist = self.make_taglist(Gst.TAG_DATE_TIME, [
             Gst.DateTime.new_from_iso8601_string(b'2014-01-07 14:13:12')
['tests/audio/test_tags.py', 'mopidy/audio/tags.py']