BeagleBoard as embedded video player

Hey everyone,

I am considering using the BeagleBoard as an embedded video player for art installations.

This platform could be a super-valuable tool for this (and other vid artists I’ve talked to agree), where someone who buys a video could have the BB act as a player. The advantage that it has over other players such as the Western Digital HD TV is that it is extremely small and could even be set up to be battery-operated.

I would plan on distributing the video on an SD card along with an Angstrom installation. The customer would then plug in the BB and expect to see a video playing, looped.

There are a few problems, however:

  1. Instead of the BeagleBoard.org splash screen, would there be a way to replace this with a custom splash screen – or even just black?

  2. Is there a way to suprress the Angstrom loading messages?

  3. Finally, a way to automatically login as “root”

After auto-login, I would you want the ability to automatically play a movie via a login script.

In other words, applying power to the beagleboard would boot up the unit (supress the extraneous graphics), login as root (if needed), and call the mplayer command.

Is this possible? And if so, could someone guide me (a non-linux person) through the appropriate steps?

Much appreciated,

Scott Kildall
www.kildall.com
Resident Artist, Eyebeam

Scott Kildall <lucky@kildall.com> writes:

Hey everyone,

I am considering using the BeagleBoard as an embedded video player for
art installations.

This platform could be a super-valuable tool for this (and other vid
artists I've talked to agree), where someone who buys a video could
have the BB act as a player. The advantage that it has over other
players such as the Western Digital HD TV is that it is extremely
small and could even be set up to be battery-operated.

I would plan on distributing the video on an SD card along with an
Angstrom installation. The customer would then plug in the BB and
expect to see a video playing, looped.

There are a few problems, however:

1. Instead of the BeagleBoard.org splash screen, would there be a way
to replace this with a custom splash screen -- or even just black?

Certainly. Simply removing it is the simplest option, and I'd say
that's good enough considering it won't be spending much time there
anyway.

2. Is there a way to suprress the Angstrom loading messages?

You could use one of the bootsplash-type packages to display a custom
splash screen while the OS boots. I'm afraid I can't comment on the
relative merits of the different flavours.

3. Finally, a way to automatically login as "root"

After auto-login, I would you want the ability to automatically play a
movie via a login script.

The simplest option is to launch a player directly from inittab. I've
done this myself for demos.

In other words, applying power to the beagleboard would boot up the
unit (supress the extraneous graphics), login as root (if needed), and
call the mplayer command.

That's all quite easy to achieve. Think about what functionality
you'd want, and I'm sure someone will be able to assist you.

Thanks for responding. My responses are inline which ask some more specific questions.

If folks here have some suggestions, I’d definitely appreciate it.

Scott Kildall <lucky@kildall.com> writes:

Hey everyone,

I am considering using the BeagleBoard as an embedded video player for

art installations.

This platform could be a super-valuable tool for this (and other vid

artists I’ve talked to agree), where someone who buys a video could

have the BB act as a player. The advantage that it has over other

players such as the Western Digital HD TV is that it is extremely

small and could even be set up to be battery-operated.

I would plan on distributing the video on an SD card along with an

Angstrom installation. The customer would then plug in the BB and

expect to see a video playing, looped.

There are a few problems, however:

  1. Instead of the BeagleBoard.org splash screen, would there be a way

to replace this with a custom splash screen – or even just black?

Certainly. Simply removing it is the simplest option, and I’d say
that’s good enough considering it won’t be spending much time there
anyway.

(a) does anyone know the specific steps to remove the BeagleBoard splash screen?
(b) does anyone know how to replace the BB splash screen with my own custom image

  1. Is there a way to suprress the Angstrom loading messages?

You could use one of the bootsplash-type packages to display a custom
splash screen while the OS boots. I’m afraid I can’t comment on the
relative merits of the different flavours.

Can someone direct me to a specific bootsplash-type package that would suppress the Angstrom loading messages? And how to install this?

  1. Finally, a way to automatically login as “root”

After auto-login, I would you want the ability to automatically play a

movie via a login script.

The simplest option is to launch a player directly from inittab. I’ve
done this myself for demos.

does anyone know how I would specifically modify the inittab file to do an automatic login?

these are the docs on the inittab:
http://publib.boulder.ibm.com/infocenter/systems/index.jsp?topic=/com.ibm.aix.files/doc/aixfiles/inittab.htm

Scott Kildall wrote:

(a) does anyone know the specific steps to remove the BeagleBoard
splash screen?

If you interrupt the machine at boot, then you can upload a new
bootsplash image IIRC. You'll need a serial console in order to issue
the required commands. Or, if your u-boot is on the SD card then I
think you can just change the image file there.

(b) does anyone know how to replace the BB splash screen with my own
custom image

2. Is there a way to suprress the Angstrom loading messages?

You could use one of the bootsplash-type packages to display a custom
splash screen while the OS boots. I'm afraid I can't comment on the
relative merits of the different flavours.

Can someone direct me to a specific bootsplash-type package that would
suppress the Angstrom loading messages? And how to install this?

I don't know about Angstrom (I need to look into that I suppose), but
Debian has a "splashy" package that might work. I haven't found a way
to make it work with a raw framebuffer yet, however. I bet Angstrom is
using a similar system just tweaked properly.

does anyone know how I would specifically modify the inittab file to
do an automatic login?

these are the docs on the inittab:
http://publib.boulder.ibm.com/infocenter/systems/index.jsp?topic=/com.ibm.aix.files/doc/aixfiles/inittab.htm

Yep. You just clone what the rest of the system startup files are
doing. That's not specific to Beagleboard or Angstrom, it's a Unix thing...

In other words, applying power to the beagleboard would boot up the
unit (supress the extraneous graphics), login as root (if needed), and
call the mplayer command.

That's all quite easy to achieve. Think about what functionality
you'd want, and I'm sure someone will be able to assist you.

Indeed. If I were to get a second, that's probably about all it would
take...

b.g.

Hi Bill,

Thanks for the info. Questions from an inexperienced Linux user (but with experience writing C++ code):

- how do you upload a new bootsplash image IIRC? I can set up a serial console, no problem.
- what *exactly* do you mean by clone what the system startup files are doing? e.g. which files are these. what are they doing?

*or* to everyone, is BeagleBoard only going to be a platform for a very experienced user to work with?

Much appreciated,
Scott

Scott Kildall wrote:

Hi Bill,

Thanks for the info. Questions from an inexperienced Linux user (but
with experience writing C++ code):

- how do you upload a new bootsplash image IIRC? I can set up a serial
console, no problem.
  
I'll dig my Beagleboard out from the peat on my desk and use it to put
together a procedure for you. Hopefully later this evening.

- what *exactly* do you mean by clone what the system startup files
are doing? e.g. which files are these. what are they doing?

*or* to everyone, is BeagleBoard only going to be a platform for a
very experienced user to work with?
  
We can make it as easy or hard as you like. :slight_smile:

Seriously, if your Beagleboard is running Debian like mine often do,
then system management issues like causing programs to automatically
start up are handled just like they are on a Debian workstation--- and
are well-documented in Debian System Administration manuals.

I'll put Angstrom back on mine and see what it looks like, but it
probably involves creating a shell script under /etc/init.d, and then
adding a line in /etc/inittab to make the init program launch that shell
script at the right time.

b.g.

Thanks Bill, this is generous of you.

If I get this up and working, I'd like to make a good FAQ for beginners since it seems like this functionality would be really useful for many others.

Best,
Scott

what is the name of the beagleboard image file?

Hi Bill-

I am trying to solve the same problem. Your work to put this together
would be extremely beneficial to the community. Thanks for offering to
give it a shot.

-Neel

Bump