video_index = i;
break;
case AVMEDIA_TYPE_AUDIO:
- aprofile = (TVHAudioCodecProfile *)self->profiles[media_type];
- if (aprofile &&
- lang_match(aprofile->language1, ssc, &audio_pindex[0], i) == 0 &&
- lang_match(aprofile->language2, ssc, &audio_pindex[1], i) == 0)
- lang_match(aprofile->language3, ssc, &audio_pindex[2], i);
+ profile = self->profiles[media_type];
+ if (profile &&
+ idnode_is_instance(&profile->idnode,
+ (idclass_t *)&codec_profile_audio_class)) {
+ aprofile = (TVHAudioCodecProfile *)profile;
+ if (lang_match(aprofile->language1, ssc, &audio_pindex[0], i) == 0 &&
+ lang_match(aprofile->language2, ssc, &audio_pindex[1], i) == 0)
+ lang_match(aprofile->language3, ssc, &audio_pindex[2], i);
+ }
break;
case AVMEDIA_TYPE_SUBTITLE:
if (subtitle_index < 0)