Repository: yt-dlp/yt-dlp
File: yt_dlp/extractor/asobistage.py (Python)

Code before:
                    headers={'Authorization': f'Bearer {token}'})
                channel_data = traverse_obj(channel_json, ('ex_content', {
                    'm3u8_url': 'streaming_url',
                    'title': 'title',
                    'thumbnail': ('thumbnail', 'url'),
                }))
            elif video_type_name == 'player':
                channel_json = self._download_json(
                    f'https://survapi.channel.or.jp/ex/events/{channel_id}', f'{video_id}/{channel_id}',
                    note='Getting live channel info', errnote='Unable to get live channel info',
                    headers={'Authorization': f'Bearer {token}'}, query={'embed': 'channel'})
                channel_data = traverse_obj(channel_json, ('data', {
                    'm3u8_url': ('Channel', 'Custom_live_url'),
                    'title': 'Name',
                    'thumbnail': 'Poster_url',
                }))

            m3u8_url = channel_data.get('m3u8_url')
            if not m3u8_url:
                raise ExtractorError('Unable to get channel m3u8 url')

            entries.append({
                'id': channel_id,
                'title': channel_data.get('title'),
                'formats': self._extract_m3u8_formats(m3u8_url, video_id=f'{video_id}/{channel_id}', fatal=False),
                'live_status': live_status,
                'thumbnail': channel_data.get('thumbnail'),
            })

        return {
            '_type': 'playlist',
            'id': video_id,
            'title': event_title,
            'entries': entries,
            'thumbnail': traverse_obj(
                event_data, ('props', 'pageProps', 'eventCMSData', 'event_thumbnail_image', {url_or_none})),
        }


Review comment (suggestion):
And then
```suggestion
                'is_live': video_type_id == 'broadcasts',
```

Code after:
                    f'https://survapi.channel.or.jp/proxy/v1/contents/{channel_id}/get_by_cuid', channel_id,
                    'Getting archive channel info', 'Unable to get archive channel info', fatal=False,
                    headers=self._HEADERS)
                channel_data = traverse_obj(channel_json, ('ex_content', {
                    'm3u8_url': 'streaming_url',
                    'title': 'title',
                    'thumbnail': ('thumbnail', 'url'),
                }))
            else:  # video_type == 'broadcasts'
                channel_json = self._download_json(
                    f'https://survapi.channel.or.jp/ex/events/{channel_id}', channel_id,
                    'Getting live channel info', 'Unable to get live channel info', fatal=False,
                    headers=self._HEADERS, query={'embed': 'channel'})
                channel_data = traverse_obj(channel_json, ('data', {
                    'm3u8_url': ('Channel', 'Custom_live_url'),
                    'title': 'Name',
                    'thumbnail': 'Poster_url',
                }))

            entries.append({
                'id': channel_id,
                'title': channel_data.get('title'),
                'formats': self._extract_m3u8_formats(channel_data.get('m3u8_url'), channel_id, fatal=False),
                'is_live': video_type == 'broadcasts',
                'thumbnail': url_or_none(channel_data.get('thumbnail')),
            })

        if not self._is_logged_in and not entries:
            self.raise_login_required()

        return self.playlist_result(entries, video_id, **event_data)