resolve #1095 map the audio track language to the element parser instead of the track parser
This commit is contained in:
parent
df7a96a7c4
commit
19cf24234c
@ -132,10 +132,10 @@ public class SmoothStreamingManifest {
|
|||||||
public final byte[][] csd;
|
public final byte[][] csd;
|
||||||
|
|
||||||
public TrackElement(int index, int bitrate, String mimeType, byte[][] csd, int maxWidth,
|
public TrackElement(int index, int bitrate, String mimeType, byte[][] csd, int maxWidth,
|
||||||
int maxHeight, int sampleRate, int numChannels) {
|
int maxHeight, int sampleRate, int numChannels, String language) {
|
||||||
this.csd = csd;
|
this.csd = csd;
|
||||||
format = new Format(String.valueOf(index), mimeType, maxWidth, maxHeight, -1, numChannels,
|
format = new Format(String.valueOf(index), mimeType, maxWidth, maxHeight, -1, numChannels,
|
||||||
sampleRate, bitrate);
|
sampleRate, bitrate, language);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -595,6 +595,7 @@ public class SmoothStreamingManifestParser implements UriLoadable.Parser<SmoothS
|
|||||||
private static final String KEY_CHANNELS = "Channels";
|
private static final String KEY_CHANNELS = "Channels";
|
||||||
private static final String KEY_FOUR_CC = "FourCC";
|
private static final String KEY_FOUR_CC = "FourCC";
|
||||||
private static final String KEY_TYPE = "Type";
|
private static final String KEY_TYPE = "Type";
|
||||||
|
private static final String KEY_LANGUAGE = "Language";
|
||||||
private static final String KEY_MAX_WIDTH = "MaxWidth";
|
private static final String KEY_MAX_WIDTH = "MaxWidth";
|
||||||
private static final String KEY_MAX_HEIGHT = "MaxHeight";
|
private static final String KEY_MAX_HEIGHT = "MaxHeight";
|
||||||
|
|
||||||
@ -607,6 +608,7 @@ public class SmoothStreamingManifestParser implements UriLoadable.Parser<SmoothS
|
|||||||
private int maxHeight;
|
private int maxHeight;
|
||||||
private int samplingRate;
|
private int samplingRate;
|
||||||
private int channels;
|
private int channels;
|
||||||
|
private String language;
|
||||||
|
|
||||||
public TrackElementParser(ElementParser parent, String baseUri) {
|
public TrackElementParser(ElementParser parent, String baseUri) {
|
||||||
super(parent, baseUri, TAG);
|
super(parent, baseUri, TAG);
|
||||||
@ -632,6 +634,7 @@ public class SmoothStreamingManifestParser implements UriLoadable.Parser<SmoothS
|
|||||||
// If fourCC is missing and the stream type is audio, we assume AAC.
|
// If fourCC is missing and the stream type is audio, we assume AAC.
|
||||||
mimeType = fourCC != null ? fourCCToMimeType(fourCC)
|
mimeType = fourCC != null ? fourCCToMimeType(fourCC)
|
||||||
: type == StreamElement.TYPE_AUDIO ? MimeTypes.AUDIO_AAC : null;
|
: type == StreamElement.TYPE_AUDIO ? MimeTypes.AUDIO_AAC : null;
|
||||||
|
language = (String) getNormalizedAttribute(KEY_LANGUAGE);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (type == StreamElement.TYPE_AUDIO) {
|
if (type == StreamElement.TYPE_AUDIO) {
|
||||||
@ -664,7 +667,7 @@ public class SmoothStreamingManifestParser implements UriLoadable.Parser<SmoothS
|
|||||||
csd.toArray(csdArray);
|
csd.toArray(csdArray);
|
||||||
}
|
}
|
||||||
return new TrackElement(index, bitrate, mimeType, csdArray, maxWidth, maxHeight, samplingRate,
|
return new TrackElement(index, bitrate, mimeType, csdArray, maxWidth, maxHeight, samplingRate,
|
||||||
channels);
|
channels, language);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static String fourCCToMimeType(String fourCC) {
|
private static String fourCCToMimeType(String fourCC) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user