Editing the MainActivity file
Use this to add the minimum amount of code to enable playback of a single clear stream (identified by a hard-coded string) as soon as the app starts.
Expand app > src > main > java > filename and open the MainActivity file.
Add the following imports:
JAVAimport nagra.otv.sdk.OTVSDK; import nagra.otv.sdk.OTVVideoView;
Below the line
public class MainActivity extends AppCompatActivity {
add:JAVAstatic final String TAG = "MainActivity"; private OTVVideoView mOTVVideoView = null; private int mPausePos = 0; private String mVideoURI = "https://d3bqrzf9w11pn3.cloudfront.net/basic_dash_bbb_clear/bbb_public.mpd";
Replace the contents of the
onCreate
method with the following to set a reference to the video view and load the SDK.JAVA@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); OTVSDK.load(this); setContentView(R.layout.activity_main); mOTVVideoView = findViewById(R.id.otvVideoView); }
OTVSDK.load(Context context);
must be called before accessing any SDK 5 methods as it starts up the libraries. The method needs to be called only once; either at application start-up or before the first use of the SDK.Add the following Android
onStart
method to set and start the stream.JAVA@Override public void onStart() { super.onStart(); mOTVVideoView.setVideoPath(mVideoURI); mOTVVideoView.start(); }
Add the following Android
onPause
method to save the current position and pause the playback.JAVA@Override public void onPause() { super.onPause(); if(mOTVVideoView != null) { mPausePos = mOTVVideoView.getCurrentPosition(); mOTVVideoView.pause(); } }
Add the following Android
onResume
method to seek to the paused position and start playback.JAVA@Override public void onResume() { super.onResume(); if(mOTVVideoView != null && mPausePos > 0) { mOTVVideoView.seekTo(mPausePos); mPausePos = 0; } }
Next step: Add a video view element to the layout.