Difference between revisions of "Android Player Intents"

From VideoLAN Wiki
Jump to navigation Jump to search
(Add VLC launch from external app documentation)
(Add subs extra)
Line 47: Line 47:
 
== Extras (optional) ==
 
== Extras (optional) ==
 
* "position": position in the media, in ms (type long)
 
* "position": position in the media, in ms (type long)
 +
* "subtitles_location": path of a subtitles file (type String)
  
  
Line 56: Line 57:
 
   vlcIntent.setDataAndType(uri, "video/*");
 
   vlcIntent.setDataAndType(uri, "video/*");
 
   vlcIntent.putExtra("position", 1354000l);
 
   vlcIntent.putExtra("position", 1354000l);
 +
  vlcIntent.putExtra("subtitles_location", "/storage/emulated/0/Movies/subs.srt");
 
   startActivityForResult(vlcIntent, vlcRequestCode);
 
   startActivityForResult(vlcIntent, vlcRequestCode);
 
  
 
=Get result code from VLC=
 
=Get result code from VLC=

Revision as of 12:23, 17 June 2015

Open a media with VLC Player

To play a media with VLC player, use an intent with the following settings

action

Intent.ACTION_VIEW ("android.intent.action.VIEW")


Package name

"org.videolan.vlc"


Data

The media Uri


Type

one of:

  • video/*
  • audio/*
  • */rmvb
  • */avi
  • */mkv
  • application/3gpp*
  • application/mp4
  • application/mpeg*
  • application/ogg
  • application/sdp
  • application/vnd.3gp*
  • application/vnd.apple.mpegurl
  • application/vnd.dvd*
  • application/vnd.dolby*
  • application/vnd.rn-realmedia*
  • application/x-iso9660-image
  • application/x-extension-mp4
  • application/x-flac
  • application/x-matroska
  • application/x-mpegURL
  • application/x-ogg
  • application/x-quicktimeplayer
  • application/x-shockwave-flash
  • application/xspf+xml
  • misc/ultravox


Extras (optional)

  • "position": position in the media, in ms (type long)
  • "subtitles_location": path of a subtitles file (type String)


Sample code

 int vlcRequestCode = 42;
 Uri uri = Uri.parse("file:///storage/emulated/0/Movies/KUNG FURY Official Movie.mp4");
 Intent vlcIntent = new Intent(Intent.ACTION_VIEW);
 vlcIntent.setPackage("org.videolan.vlc");
 vlcIntent.setDataAndType(uri, "video/*");
 vlcIntent.putExtra("position", 1354000l);
 vlcIntent.putExtra("subtitles_location", "/storage/emulated/0/Movies/subs.srt");
 startActivityForResult(vlcIntent, vlcRequestCode);

Get result code from VLC

Since version 1.4.1, Android VLC application returns an intent when closing.

Here is the description of this intent:

Intent action

"org.videolan.vlc.player.result"


Result code

Result Value (int) Description
RESULT_OK -1 Video finished or user ended playback
RESULT_CANCELED 0 No compatible cpu, incorrect VLC abi variant installed
RESULT_CONNECTION_FAILED 2 Connection failed to audio service
RESULT_PLAYBACK_ERROR 3 VLC is not able to play this file, it could be incorrect path/uri, not supported codec or broken file
RESULT_HARDWARE_ACCELERATION_ERROR 4 Error with hardware acceleration, user refused to switch to software decoding
RESULT_VIDEO_TRACK_LOST 5 VLC continues playback, but for audio track only. (Audio file detected or user chose to)


Data

Media Uri


Extras

  • "extra_position": position in the media, in ms (type long)
  • "extra_duration": media duration (type long)


You can check the source here.