We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
vidzi.tv doesn't work
$youtube-dl --version
2018.06.04

$youtube-dl and http://vidzi.tv links doesn't work

for example:
$youtube-dl http://vidzi.tv/n83vo2mlnpgb

Failed to parse JSON  (caused by ValueError("Expecting ',' delimiter: line 12 column 175 (char 771)",)); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

$youtube-dl --verbose http://vidzi.tv/n83vo2mlnpgb

[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'--verbose', u'http://vidzi.tv/n83vo2mlnpgb']
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2018.06.04
[debug] Python version 2.7.10 (CPython) - Darwin-17.5.0-x86_64-i386-64bit
[debug] exe versions: avconv 12.3, avprobe 12.3, ffmpeg 3.4.2, ffprobe 3.4.2
[debug] Proxy map: {}
[Vidzi] n83vo2mlnpgb: Downloading webpage
ERROR: n83vo2mlnpgb: Failed to parse JSON  (caused by ValueError("Expecting ',' delimiter: line 12 column 175 (char 791)",)); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
  File "/Library/Python/2.7/site-packages/youtube_dl/extractor/common.py", line 774, in _parse_json
    return json.loads(json_string)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/json/__init__.py", line 338, in loads
    return _default_decoder.decode(s)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/json/decoder.py", line 366, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/json/decoder.py", line 382, in raw_decode
    obj, end = self.scan_once(s, idx)
ValueError: Expecting ',' delimiter: line 12 column 175 (char 791)
Traceback (most recent call last):
  File "/Library/Python/2.7/site-packages/youtube_dl/YoutubeDL.py", line 792, in extract_info
    ie_result = ie.extract(url)
  File "/Library/Python/2.7/site-packages/youtube_dl/extractor/common.py", line 500, in extract
    ie_result = self._real_extract(url)
  File "/Library/Python/2.7/site-packages/youtube_dl/extractor/vidzi.py", line 57, in _real_extract
    video_id, transform_source=js_to_json)
  File "/Library/Python/2.7/site-packages/youtube_dl/extractor/common.py", line 778, in _parse_json
    raise ExtractorError(errmsg, cause=ve)
ExtractorError: n83vo2mlnpgb: Failed to parse JSON  (caused by ValueError("Expecting ',' delimiter: line 12 column 175 (char 791)",)); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.



--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `youtube_dl/extractor/vidzi.py`
Content:
```
1 # coding: utf-8
2 from __future__ import unicode_literals
3 
4 import re
5 
6 from .common import InfoExtractor
7 from ..utils import (
8     decode_packed_codes,
9     js_to_json,
10     NO_DEFAULT,
11     PACKED_CODES_RE,
12 )
13 
14 
15 class VidziIE(InfoExtractor):
16     _VALID_URL = r'https?://(?:www\.)?vidzi\.(?:tv|cc|si)/(?:embed-)?(?P<id>[0-9a-zA-Z]+)'
17     _TESTS = [{
18         'url': 'http://vidzi.tv/cghql9yq6emu.html',
19         'md5': '4f16c71ca0c8c8635ab6932b5f3f1660',
20         'info_dict': {
21             'id': 'cghql9yq6emu',
22             'ext': 'mp4',
23             'title': 'youtube-dl test video  1\\\\2\'3/4<5\\\\6ä7↭',
24         },
25         'params': {
26             # m3u8 download
27             'skip_download': True,
28         },
29     }, {
30         'url': 'http://vidzi.tv/embed-4z2yb0rzphe9-600x338.html',
31         'only_matching': True,
32     }, {
33         'url': 'http://vidzi.cc/cghql9yq6emu.html',
34         'only_matching': True,
35     }, {
36         'url': 'https://vidzi.si/rph9gztxj1et.html',
37         'only_matching': True,
38     }]
39 
40     def _real_extract(self, url):
41         video_id = self._match_id(url)
42 
43         webpage = self._download_webpage(
44             'http://vidzi.tv/%s' % video_id, video_id)
45         title = self._html_search_regex(
46             r'(?s)<h2 class="video-title">(.*?)</h2>', webpage, 'title')
47 
48         codes = [webpage]
49         codes.extend([
50             decode_packed_codes(mobj.group(0)).replace('\\\'', '\'')
51             for mobj in re.finditer(PACKED_CODES_RE, webpage)])
52         for num, code in enumerate(codes, 1):
53             jwplayer_data = self._parse_json(
54                 self._search_regex(
55                     r'setup\(([^)]+)\)', code, 'jwplayer data',
56                     default=NO_DEFAULT if num == len(codes) else '{}'),
57                 video_id, transform_source=js_to_json)
58             if jwplayer_data:
59                 break
60 
61         info_dict = self._parse_jwplayer_data(jwplayer_data, video_id, require_title=False)
62         info_dict['title'] = title
63 
64         return info_dict
65
```
--- END FILES ---

Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.

Here is an example:

```diff
diff --git a/examples/server_async.py b/examples/server_async.py
--- a/examples/server_async.py
+++ b/examples/server_async.py
@@ -313,4 +313,4 @@
 
 
 if __name__ == "__main__":
-    asyncio.run(run_async_server("."), debug=True)
+    asyncio.run(run_async_server(), debug=True)
diff --git a/examples/server_sync.py b/examples/server_sync.py
--- a/examples/server_sync.py
+++ b/examples/server_sync.py
@@ -313,5 +313,5 @@
 
 
 if __name__ == "__main__":
-    server = run_sync_server(".")
+    server = run_sync_server()
     server.shutdown()

```

diff --git a/youtube_dl/extractor/vidzi.py b/youtube_dl/extractor/vidzi.py
--- a/youtube_dl/extractor/vidzi.py
+++ b/youtube_dl/extractor/vidzi.py
@@ -54,7 +54,8 @@
                 self._search_regex(
                     r'setup\(([^)]+)\)', code, 'jwplayer data',
                     default=NO_DEFAULT if num == len(codes) else '{}'),
-                video_id, transform_source=js_to_json)
+                video_id, transform_source=lambda s: js_to_json(
+                    re.sub(r'\s*\+\s*window\[.+?\]', '', s)))
             if jwplayer_data:
                 break

{"golden_diff": "diff --git a/youtube_dl/extractor/vidzi.py b/youtube_dl/extractor/vidzi.py\n--- a/youtube_dl/extractor/vidzi.py\n+++ b/youtube_dl/extractor/vidzi.py\n@@ -54,7 +54,8 @@\n                 self._search_regex(\n                     r'setup\\(([^)]+)\\)', code, 'jwplayer data',\n                     default=NO_DEFAULT if num == len(codes) else '{}'),\n-                video_id, transform_source=js_to_json)\n+                video_id, transform_source=lambda s: js_to_json(\n+                    re.sub(r'\\s*\\+\\s*window\\[.+?\\]', '', s)))\n             if jwplayer_data:\n                 break\n", "issue": "vidzi.tv doesn't work\n$youtube-dl --version\r\n2018.06.04\r\n\r\n$youtube-dl and http://vidzi.tv links doesn't work\r\n\r\nfor example:\r\n$youtube-dl http://vidzi.tv/n83vo2mlnpgb\r\n\r\nFailed to parse JSON  (caused by ValueError(\"Expecting ',' delimiter: line 12 column 175 (char 771)\",)); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.\r\n\r\n$youtube-dl --verbose http://vidzi.tv/n83vo2mlnpgb\r\n\r\n[debug] System config: []\r\n[debug] User config: []\r\n[debug] Custom config: []\r\n[debug] Command-line args: [u'--verbose', u'http://vidzi.tv/n83vo2mlnpgb']\r\n[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8\r\n[debug] youtube-dl version 2018.06.04\r\n[debug] Python version 2.7.10 (CPython) - Darwin-17.5.0-x86_64-i386-64bit\r\n[debug] exe versions: avconv 12.3, avprobe 12.3, ffmpeg 3.4.2, ffprobe 3.4.2\r\n[debug] Proxy map: {}\r\n[Vidzi] n83vo2mlnpgb: Downloading webpage\r\nERROR: n83vo2mlnpgb: Failed to parse JSON  (caused by ValueError(\"Expecting ',' delimiter: line 12 column 175 (char 791)\",)); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.\r\nTraceback (most recent call last):\r\n  File \"/Library/Python/2.7/site-packages/youtube_dl/extractor/common.py\", line 774, in _parse_json\r\n    return json.loads(json_string)\r\n  File \"/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/json/__init__.py\", line 338, in loads\r\n    return _default_decoder.decode(s)\r\n  File \"/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/json/decoder.py\", line 366, in decode\r\n    obj, end = self.raw_decode(s, idx=_w(s, 0).end())\r\n  File \"/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/json/decoder.py\", line 382, in raw_decode\r\n    obj, end = self.scan_once(s, idx)\r\nValueError: Expecting ',' delimiter: line 12 column 175 (char 791)\r\nTraceback (most recent call last):\r\n  File \"/Library/Python/2.7/site-packages/youtube_dl/YoutubeDL.py\", line 792, in extract_info\r\n    ie_result = ie.extract(url)\r\n  File \"/Library/Python/2.7/site-packages/youtube_dl/extractor/common.py\", line 500, in extract\r\n    ie_result = self._real_extract(url)\r\n  File \"/Library/Python/2.7/site-packages/youtube_dl/extractor/vidzi.py\", line 57, in _real_extract\r\n    video_id, transform_source=js_to_json)\r\n  File \"/Library/Python/2.7/site-packages/youtube_dl/extractor/common.py\", line 778, in _parse_json\r\n    raise ExtractorError(errmsg, cause=ve)\r\nExtractorError: n83vo2mlnpgb: Failed to parse JSON  (caused by ValueError(\"Expecting ',' delimiter: line 12 column 175 (char 791)\",)); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.\r\n\r\n\n", "before_files": [{"content": "# coding: utf-8\nfrom __future__ import unicode_literals\n\nimport re\n\nfrom .common import InfoExtractor\nfrom ..utils import (\n    decode_packed_codes,\n    js_to_json,\n    NO_DEFAULT,\n    PACKED_CODES_RE,\n)\n\n\nclass VidziIE(InfoExtractor):\n    _VALID_URL = r'https?://(?:www\\.)?vidzi\\.(?:tv|cc|si)/(?:embed-)?(?P<id>[0-9a-zA-Z]+)'\n    _TESTS = [{\n        'url': 'http://vidzi.tv/cghql9yq6emu.html',\n        'md5': '4f16c71ca0c8c8635ab6932b5f3f1660',\n        'info_dict': {\n            'id': 'cghql9yq6emu',\n            'ext': 'mp4',\n            'title': 'youtube-dl test video  1\\\\\\\\2\\'3/4<5\\\\\\\\6\u00e47\u21ad',\n        },\n        'params': {\n            # m3u8 download\n            'skip_download': True,\n        },\n    }, {\n        'url': 'http://vidzi.tv/embed-4z2yb0rzphe9-600x338.html',\n        'only_matching': True,\n    }, {\n        'url': 'http://vidzi.cc/cghql9yq6emu.html',\n        'only_matching': True,\n    }, {\n        'url': 'https://vidzi.si/rph9gztxj1et.html',\n        'only_matching': True,\n    }]\n\n    def _real_extract(self, url):\n        video_id = self._match_id(url)\n\n        webpage = self._download_webpage(\n            'http://vidzi.tv/%s' % video_id, video_id)\n        title = self._html_search_regex(\n            r'(?s)<h2 class=\"video-title\">(.*?)</h2>', webpage, 'title')\n\n        codes = [webpage]\n        codes.extend([\n            decode_packed_codes(mobj.group(0)).replace('\\\\\\'', '\\'')\n            for mobj in re.finditer(PACKED_CODES_RE, webpage)])\n        for num, code in enumerate(codes, 1):\n            jwplayer_data = self._parse_json(\n                self._search_regex(\n                    r'setup\\(([^)]+)\\)', code, 'jwplayer data',\n                    default=NO_DEFAULT if num == len(codes) else '{}'),\n                video_id, transform_source=js_to_json)\n            if jwplayer_data:\n                break\n\n        info_dict = self._parse_jwplayer_data(jwplayer_data, video_id, require_title=False)\n        info_dict['title'] = title\n\n        return info_dict\n", "path": "youtube_dl/extractor/vidzi.py"}], "after_files": [{"content": "# coding: utf-8\nfrom __future__ import unicode_literals\n\nimport re\n\nfrom .common import InfoExtractor\nfrom ..utils import (\n    decode_packed_codes,\n    js_to_json,\n    NO_DEFAULT,\n    PACKED_CODES_RE,\n)\n\n\nclass VidziIE(InfoExtractor):\n    _VALID_URL = r'https?://(?:www\\.)?vidzi\\.(?:tv|cc|si)/(?:embed-)?(?P<id>[0-9a-zA-Z]+)'\n    _TESTS = [{\n        'url': 'http://vidzi.tv/cghql9yq6emu.html',\n        'md5': '4f16c71ca0c8c8635ab6932b5f3f1660',\n        'info_dict': {\n            'id': 'cghql9yq6emu',\n            'ext': 'mp4',\n            'title': 'youtube-dl test video  1\\\\\\\\2\\'3/4<5\\\\\\\\6\u00e47\u21ad',\n        },\n        'params': {\n            # m3u8 download\n            'skip_download': True,\n        },\n    }, {\n        'url': 'http://vidzi.tv/embed-4z2yb0rzphe9-600x338.html',\n        'only_matching': True,\n    }, {\n        'url': 'http://vidzi.cc/cghql9yq6emu.html',\n        'only_matching': True,\n    }, {\n        'url': 'https://vidzi.si/rph9gztxj1et.html',\n        'only_matching': True,\n    }]\n\n    def _real_extract(self, url):\n        video_id = self._match_id(url)\n\n        webpage = self._download_webpage(\n            'http://vidzi.tv/%s' % video_id, video_id)\n        title = self._html_search_regex(\n            r'(?s)<h2 class=\"video-title\">(.*?)</h2>', webpage, 'title')\n\n        codes = [webpage]\n        codes.extend([\n            decode_packed_codes(mobj.group(0)).replace('\\\\\\'', '\\'')\n            for mobj in re.finditer(PACKED_CODES_RE, webpage)])\n        for num, code in enumerate(codes, 1):\n            jwplayer_data = self._parse_json(\n                self._search_regex(\n                    r'setup\\(([^)]+)\\)', code, 'jwplayer data',\n                    default=NO_DEFAULT if num == len(codes) else '{}'),\n                video_id, transform_source=lambda s: js_to_json(\n                    re.sub(r'\\s*\\+\\s*window\\[.+?\\]', '', s)))\n            if jwplayer_data:\n                break\n\n        info_dict = self._parse_jwplayer_data(jwplayer_data, video_id, require_title=False)\n        info_dict['title'] = title\n\n        return info_dict\n", "path": "youtube_dl/extractor/vidzi.py"}]}