Using Players

LiveCode allows you to play sound and video within your application using the player object. The player object described in this lesson is only supported on desktop, for Mobile players please see the lesson "How do I play a video in part of the screen on mobile".

Adding a Player Object

Adding a Player Object

The first thing to do is to add a player object to your stack. Do this by dragging it across from the Tools Palette.

Setting the Filename of the Player

Setting the Filename of the Player

You set the filename property of the player object to tell it which sound or movie file to play.

Open the Property Inspector for the player and click the button next to the Source (1), this allows you to select an external file to be played.

You can also set the filename property of a player in script, for example:

set the filename of player "sound" to "G:/Documents/Elanor/Projects/Getting Started Lessons/hiscore.m4a"

Using the Player Controller

Using the Player Controller

The controller that appears at the bottom of the player allows the user to start and stop play back(1), control the volume(2) and move to a certain point in the sound file or movie(3,4).

Controlling the Player in Script

Controlling the Player in Script

If you don't want your users to have control of the video, or you prefer not to show the controller and add your own objects to control play back, then you can use LiveCode scripts to control the video.

Open the Property Inspector for the player and turn off the controller (1). Name your player "Movie" in the Name field (2). Create and name some buttons to control the player (3).

In the Play button script enter:

on mouseup

  start player "movie"

end mouseup

In the Stop button enter:

on mouseup

  stop player "movie"

end mouseup

Switch to edit mode and try it out, your movie should start and stop.

You can check what other commands and properties are available to you in the Dictionary. Check the entry for the Player Object. For example you can set the currentTime property -

Specifies the elapsed time in a movie or sound, by setting this you can skip forward or back e.g.

set the currentTime of player "movie" to 12000

Referencing Files on a Server

Referencing Files on a Server

You can also set the filename property of a player to an http URL.

Save your sample stack, then open the script editor for the card by right clicking on the card outside your player or buttons. Add this to the card script:

on preopencard

  set the filename of player "movie" to "http://elanorb.on-rev.com/lessons/MalteBrill.mp4"

end preopencard

Close your stack after saving, then reopen it. The script will run before the card opens, and populate your player with the movie indicated.

If you specify a URL for a streaming QuickTime movie file, LiveCode displays the movie sequentially as it downloads. Otherwise, LiveCode must download the entire file before you can play it. To pre-fetch a file from the Internet in order to speed up access to it, use the load command before visiting the card that holds the player or image that references the file's URL. You could add this to your preopencard script.

Using Players on Mobile

This lesson only applies to players on the desktop. If you want to use a player in a Mobile application you can use an iosPlayer or androidPlayer object, this is a native mobile control that displays a movie. For more information on using mobile players see the lesson "How do I play a video in part of the screen on mobile".

4 Comments

Ian Stewart

Hello

I have a player and use it to play quicktime movies.

The code in the program refers to a file ending in ".mov".

The uncompiled and compiled (standalone) versions work fine on my PC with XP.

However the standalone does not seem to play the files when I put the standalone (including the resource folder) on a PC with windows 7.

The file extension (".mov") is not visible as an ending on this platform so I wondered if that might be the problem? If so, what can I do to get around this?

Thanks
Ian

Hanson Schmidt-Cornelius

Hi Ian,

you can control the extensions of your files in your "Explorer preferences". Have a look at Tools -> Folder Options... -> View. You should then find a line with a tick box that states: "Hide extensions for known file types". If you untick this, you should see the .mov extensions again.

Making the .mov extension visible will probably not help address the problem you are having, but without more information it is hard for me to make any recommendations on what may be wrong.

You could research if someone else has had a similar issue in our LiveCode community on one of our forums: http://forums.runrev.com/, contact support at support@runrev.com or launch a but report in our quality control centre at quality.runrev.com. We would be very happy to look into the issue if you think something is not working the way you think it should.

Kind Regards,

Hanson

Geoff Macumber

Hi,

I have been trying to get a video player to work but with no success. I have done everything shown above but no result. Can I get some sample code for a simple stack that works so that I can compare with what I am doing to see what is wrong please?

Elanor Buchanan

Hi Geoff,

Using player objects on desktop apps doesn't really require any code, you just add a player object, set its filename property to reference the video file you want to play and then use the player controls to start and stop the player.

What type of video file are you trying to play and what platform are you working on?

Kind regards

Elanor

Add your comment

E-Mail me when someone replies to this comment