-
Notifications
You must be signed in to change notification settings - Fork 60
Tizen API: AVPlay
SukyungLee (Sue) edited this page Feb 26, 2016
·
28 revisions
For converting AVPlay API of tizen to TOAST API, please refer to the followings.
If you want more information, please refer to toast.Media and toast.MediaPlugin
####open
-
Before
webapis.avplay.open('url');
-
After
var media = toast.Media.getInstance(); media.open('url');
####play
-
Before
webapis.avplay.prepare() webapis.avplay.play();
-
After
media.play();
####stop
-
Before
webapis.avplay.stop();
-
After
media.stop();
####pause
-
Before
webapis.avplay.pause();
-
After
media.pause();
####jumpForward
-
Before
webapis.avplay.jumpForward(10000); // The number of milliseconds to be forwarded
-
After
var curPos = media.getCurrentPosition(); media.seekTo(curPos + 10000); // The position to seek in milliseconds
####jumpBackward
-
Before
webapis.avplay.jumpBackward(10000); // The number of milliseconds to be backwarded
-
After
var curPos = media.getCurrentPosition(); media.seekTo(curPos - 10000); // The position to seek in milliseconds
####listener
-
Before
var listener = { onbufferingstart: function() { console.log("Buffering start."); }, onbufferingprogress: function(percent) { console.log("Buffering progress data : " + data1); }, onbufferingcomplete: function() { console.log("Buffering complete."); }, oncurrentplaytime: function(currentTime) { console.log("Current Playtime : " + data1); }, onbufferingcomplete: function() { console.log("Buffering complete."); }, onevent: function(eventType, eventData) { console.log("event type error : " + eventType + ", data: " + eventData); }, onerror: function(eventType) { console.log("event type error : " + eventType); }, onsubtitlechange: function(duration, text, data3, data4) { console.log("Subtitle Changed."); }, ondrmevent: function(drmEvent, drmData) { console.log("DRM callback: " + drmEvent + ", data: " + drmData); }, onstreamcompleted: function() { console.log("Stream Completed"); } } webapis.avplay.setListener(listener);
-
After
media.setListener({ onevent: function (evt) { switch(evt.type) { case "STATE": console.log("Media State changed: " + evt.data.oldState + " -> " + evt.data.state); break; case "DURATION": console.log("Media duration updated: " + evt.data.duration + "ms"); break; case "POSITION": console.log("Media position updated: " + evt.data.position + "ms"); break; case "BUFFERINGPROGRESS": console.log("Media buffering in progress: " + evt.data.bufferingPercentage + "%"); if(evt.data.bufferingPercentage >= 100) { console.log("Buffering completed"); } break; case "ENDED": console.log("Media ended"); break; } }, onerror: function (err) { console.error("MediaError occured: " + JSON.stringify(err)); } });
####appcommon.setScreenSaver
-
Before
webapis.appcommon.setScreenSaver(SCREEN_SAVER_OFF, function() {}, function() {});
-
After
You don't have to anything. TOAST automatically operates.
####Playback special content(setStreaming / setDRM) toast MediaPlugin constructor bind to toast.media with option data to be able to playback special content.
var media = toast.Media.getInstance();
var mediaPlugin = new toast.MediaPluginHLS();
media.resetPlugin();
media.attachPlugin(mediaPlugin);
mediaIns.open('http://mydomain.com/video.m3u8');
-
Before
webapis.avplay.setStreamingProperty("ADAPTIVE_INFO", "BITRATES=yourBitRates|STARTBITRATE=yourStartBitRate|SKIPBITRATE=yourSkipBitRate");
-
After
var HLSData = { BITRATES : 'yourBitRates', STARTBITRATE : "yourStartBitRate", SKIPBITRATE : "yourSkipBitRate" }; var mediaPlugin = new toast.MediaPluginHLS(HLSData);
-
Before
webapis.avplay.setStreamingProperty('SET_MODE_4K', 'TRUE');
-
After
var mediaPlugin = new toast.MediaPluginUHD();
-
Before
var wideVineData = 'DEVICE_ID=myDeviceId|DEVICET_TYPE_ID=myDeviceTypeId|STREAM_ID=myStreamId|DRM_URL=http://yourDrmUrl.com|I_SEEK=yourI\_SEEK|CUR_TIME=yourCurTime|PORTAL=yourPortal|USER_DATA=yourUserData' webapis.avplay.setStreamingProperty('WIDEVINE', wideVineData);
-
After
var wideVineData = { DEVICE_ID : 'yourDeviceId', DEVICET_TYPE_ID : 'yourDeviceTypeId', // ex) '60' STREAM_ID : 'yourStreamId', DRM_URL : 'http://yourDrmUrl.com', I_SEEK : 'yourI\_SEEK', // ex) 'TIME' CUR_TIME : 'yourCurTime', // ex) 'PTS' PORTAL : 'yourPortal', USER_DATA : 'yourUserData', }; var mediaPlugin = new toast.MediaPluginWideVine(wideVineData);
-
Before
var playReadyData = { LicenseServer : 'myLicenseServer', CustomData : 'myCustomData' }; webapis.avplay.setDrm('PLAYREADY', 'SetProperties', playReadyData);
-
After
var playReadyData = { LicenseServer : 'myLicenseServer', CustomData : 'myCustomData' }; var mediaPlugin = new toast.MediaPluginPlayReady(playReadyData);
uuuu
Getting Started
Converting Tizen to Toast
- Prepare to convert
- Tizen API: AVPlay
- Tizen API: DrmInfo(Deprecated)
- Tizen API: Application
- Tizen API: TVInputDevice
- Tizen API: TVAudioControl
- Tizen API: TVWindow
- Tizen API: TVChannel
- Tizen API: IME
- Tizen API: ProductInfo
- Tizen API: Network
- How to detect platform
Converting Legacy to Toast
- Prepare to convert
- Legacy API: AVPlay
- Legacy API: TVInfo
- Legacy API: Common
- Legacy API: InputDevice
- Legacy API: AudioControl
- Legacy API: TVWindow
- Legacy API: TVChannel
- Legacy API: IME
- How to detect platform
API Reference
- supported cordova plugin
- toast.Media
- toast.MediaPlugin
- toast.drminfo(Deprecated)
- toast.application
- toast.inputdevice
- toast.tvaudiocontrol
- toast.tvwindow
- toast.tvchannel
- toast.billing
Supported platforms
Sample App
Contribution
Frequently Asked Questions