|  | @@ -7,7 +7,7 @@ from ..utils import ExtractorError
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  class ChaturbateIE(InfoExtractor):
 | 
	
		
			
				|  |  | -    _VALID_URL = r'https?://(?:[^/]+\.)?chaturbate\.com/(?P<id>[^/?#]+)'
 | 
	
		
			
				|  |  | +    _VALID_URL = r'https?://(?:[^/]+\.)?chaturbate\.com/(?:fullvideo/?\?.*?\bb=)?(?P<id>[^/?&#]+)'
 | 
	
		
			
				|  |  |      _TESTS = [{
 | 
	
		
			
				|  |  |          'url': 'https://www.chaturbate.com/siswet19/',
 | 
	
		
			
				|  |  |          'info_dict': {
 | 
	
	
		
			
				|  | @@ -21,6 +21,9 @@ class ChaturbateIE(InfoExtractor):
 | 
	
		
			
				|  |  |              'skip_download': True,
 | 
	
		
			
				|  |  |          },
 | 
	
		
			
				|  |  |          'skip': 'Room is offline',
 | 
	
		
			
				|  |  | +    }, {
 | 
	
		
			
				|  |  | +        'url': 'https://chaturbate.com/fullvideo/?b=caylin',
 | 
	
		
			
				|  |  | +        'only_matching': True,
 | 
	
		
			
				|  |  |      }, {
 | 
	
		
			
				|  |  |          'url': 'https://en.chaturbate.com/siswet19/',
 | 
	
		
			
				|  |  |          'only_matching': True,
 | 
	
	
		
			
				|  | @@ -32,7 +35,8 @@ class ChaturbateIE(InfoExtractor):
 | 
	
		
			
				|  |  |          video_id = self._match_id(url)
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          webpage = self._download_webpage(
 | 
	
		
			
				|  |  | -            url, video_id, headers=self.geo_verification_headers())
 | 
	
		
			
				|  |  | +            'https://chaturbate.com/%s/' % video_id, video_id,
 | 
	
		
			
				|  |  | +            headers=self.geo_verification_headers())
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          m3u8_urls = []
 | 
	
		
			
				|  |  |  
 |