|
@@ -178,10 +178,11 @@ static void populate_codec_list(struct msm_transcode_loopback *trans,
|
|
|
|
|
|
if (cstream->direction == SND_COMPRESS_CAPTURE) {
|
|
|
compr_cap.direction = SND_COMPRESS_CAPTURE;
|
|
|
- compr_cap.num_codecs = 3;
|
|
|
+ compr_cap.num_codecs = 4;
|
|
|
compr_cap.codecs[0] = SND_AUDIOCODEC_PCM;
|
|
|
compr_cap.codecs[1] = SND_AUDIOCODEC_AC3;
|
|
|
compr_cap.codecs[2] = SND_AUDIOCODEC_EAC3;
|
|
|
+ compr_cap.codecs[3] = SND_AUDIOCODEC_TRUEHD;
|
|
|
memcpy(&trans->source_compr_cap, &compr_cap,
|
|
|
sizeof(struct snd_compr_caps));
|
|
|
}
|
|
@@ -482,6 +483,11 @@ static int msm_transcode_loopback_set_params(struct snd_compr_stream *cstream,
|
|
|
trans->source.codec_format =
|
|
|
FORMAT_EAC3;
|
|
|
break;
|
|
|
+ case SND_AUDIOCODEC_TRUEHD:
|
|
|
+ pr_debug("Source SND_AUDIOCODEC_TRUEHD\n");
|
|
|
+ trans->source.codec_format =
|
|
|
+ FORMAT_TRUEHD;
|
|
|
+ break;
|
|
|
default:
|
|
|
pr_debug("%s: unknown source codec\n", __func__);
|
|
|
ret = -EINVAL;
|