Merge pull request #7045 from remitamine/ign
[youtube-dl] / youtube_dl / extractor / brightcove.py
index b0536ddbdcf086ff7c53bdaaa2e5dffb99c86dbf..03a4f446e9d80808b4e4b3df3ad5b3d0f8a550e3 100644 (file)
@@ -387,6 +387,10 @@ class BrightcoveNewIE(InfoExtractor):
         'params': {
             'skip_download': True,
         }
+    }, {
+        # ref: prefixed video id
+        'url': 'http://players.brightcove.net/3910869709001/21519b5c-4b3b-4363-accb-bdc8f358f823_default/index.html?videoId=ref:7069442',
+        'only_matching': True,
     }]
 
     @staticmethod
@@ -400,6 +404,7 @@ class BrightcoveNewIE(InfoExtractor):
         # 1. http://docs.brightcove.com/en/video-cloud/brightcove-player/guides/publish-video.html#setvideoiniframe
         # 2. http://docs.brightcove.com/en/video-cloud/brightcove-player/guides/publish-video.html#setvideousingjavascript
         # 3. http://docs.brightcove.com/en/video-cloud/brightcove-player/guides/embed-in-page.html
+        # 4. https://support.brightcove.com/en/video-cloud/docs/dynamically-assigning-videos-player
 
         entries = []
 
@@ -412,6 +417,7 @@ class BrightcoveNewIE(InfoExtractor):
         for video_id, account_id, player_id, embed in re.findall(
                 # According to examples from [3] it's unclear whether video id
                 # may be optional and what to do when it is
+                # According to [4] data-video-id may be prefixed with ref:
                 r'''(?sx)
                     <video[^>]+
                         data-video-id=["\']((?:ref:)?\d+)["\'][^>]*>.*?