@@ -114,13 +114,15 @@ class VideoPlayerTizen extends VideoPlayerPlatform {
114114 final List <VideoTrack > videoTracks = < VideoTrack > [];
115115 for (final Map <Object ?, Object ?>? trackMap in response.tracks) {
116116 final int trackId = trackMap! ['trackId' ]! as int ;
117+ final String mimetype = trackMap['mimetype' ]! as String ;
117118 final int bitrate = trackMap['bitrate' ]! as int ;
118119 final int width = trackMap['width' ]! as int ;
119120 final int height = trackMap['height' ]! as int ;
120121
121122 videoTracks.add (
122123 VideoTrack (
123124 trackId: trackId,
125+ mimetype: mimetype,
124126 width: width,
125127 height: height,
126128 bitrate: bitrate,
@@ -140,13 +142,15 @@ class VideoPlayerTizen extends VideoPlayerPlatform {
140142 final List <AudioTrack > audioTracks = < AudioTrack > [];
141143 for (final Map <Object ?, Object ?>? trackMap in response.tracks) {
142144 final int trackId = trackMap! ['trackId' ]! as int ;
145+ final String mimetype = trackMap['mimetype' ]! as String ;
143146 final String language = trackMap['language' ]! as String ;
144147 final int channel = trackMap['channel' ]! as int ;
145148 final int bitrate = trackMap['bitrate' ]! as int ;
146149
147150 audioTracks.add (
148151 AudioTrack (
149152 trackId: trackId,
153+ mimetype: mimetype,
150154 language: language,
151155 channel: channel,
152156 bitrate: bitrate,
@@ -166,9 +170,12 @@ class VideoPlayerTizen extends VideoPlayerPlatform {
166170 final List <TextTrack > textTracks = < TextTrack > [];
167171 for (final Map <Object ?, Object ?>? trackMap in response.tracks) {
168172 final int trackId = trackMap! ['trackId' ]! as int ;
173+ final String mimetype = trackMap['mimetype' ]! as String ;
169174 final String language = trackMap['language' ]! as String ;
170175
171- textTracks.add (TextTrack (trackId: trackId, language: language));
176+ textTracks.add (
177+ TextTrack (trackId: trackId, mimetype: mimetype, language: language),
178+ );
172179 }
173180
174181 return textTracks;
@@ -282,6 +289,52 @@ class VideoPlayerTizen extends VideoPlayerPlatform {
282289 };
283290 }
284291
292+ @override
293+ Future <List <Track >> getActiveTrackInfo (int playerId) async {
294+ final TrackMessage msg = await _api.getActiveTrackInfo (
295+ PlayerMessage (playerId: playerId),
296+ );
297+ final List <Track > tracks = < Track > [];
298+ for (final Map <Object ?, Object ?>? trackMap in msg.tracks) {
299+ final String trackType = trackMap! ['trackType' ]! as String ;
300+ final int trackId = trackMap['trackId' ]! as int ;
301+ final String mimetype = trackMap['mimetype' ]! as String ;
302+ if (trackType == 'video' ) {
303+ final int bitrate = trackMap['bitrate' ]! as int ;
304+ final int width = trackMap['width' ]! as int ;
305+ final int height = trackMap['height' ]! as int ;
306+ tracks.add (
307+ VideoTrack (
308+ trackId: trackId,
309+ mimetype: mimetype,
310+ width: width,
311+ height: height,
312+ bitrate: bitrate,
313+ ),
314+ );
315+ } else if (trackType == 'audio' ) {
316+ final String language = trackMap['language' ]! as String ;
317+ final int channel = trackMap['channel' ]! as int ;
318+ final int bitrate = trackMap['bitrate' ]! as int ;
319+ tracks.add (
320+ AudioTrack (
321+ trackId: trackId,
322+ mimetype: mimetype,
323+ language: language,
324+ channel: channel,
325+ bitrate: bitrate,
326+ ),
327+ );
328+ } else if (trackType == 'text' ) {
329+ final String language = trackMap['language' ]! as String ;
330+ tracks.add (
331+ TextTrack (trackId: trackId, mimetype: mimetype, language: language),
332+ );
333+ }
334+ }
335+ return tracks;
336+ }
337+
285338 @override
286339 Future <void > setStreamingProperty (
287340 int playerId,
0 commit comments