Video streaming from PC/MAC to Arduboy

I’m testing a proof of concept JAVA app that streams video from PC/MAC to the Arduboy using the USB cable.

Right now it works with animated gifs and with wav files, I’m not sure if it’s possible to play both video and audio at the same time because of the USB transfer rate. :confused:

Also, I don’t know if this could be useful for developing an app. Have you any ideas? Thanks! :wink:

9 Likes

can you show how you did it?

Wow! The image quality is remarkable and the frame rate is great.

2 Likes

I’ve been able to send data and audio to the Arduboy :slight_smile:

It’s not optimized, now I need to work on image/audio compression that could help me to improve the frame rate. Also, this will help me to include smoother animations on a future game. :wink:

4 Likes

WOW! This is great I can’t wait to see what impact this makes in game graphics😊

1 Like

Thanks Cody!

Arduboy has a big limitation with the size of the games that can be installed inside.
Good thing is that Arduboy has a fast CPU that can manage compressed images/audio with a good frame rate (> 30 fps). I’m working on a demo/game to show these features :wink:

By using the USB CDC serial library from Teensy, you can stream up to 1 Mbps. This makes it easy to achieve 60-120 frames per second, as the standard library from Arduino is very slow. You can find a comparison here:

https://www.pjrc.com/teensy/benchmark_usb_serial_receive.html

I could successfully test the TeeOnArdu core with minimal modifications to the Arduboy2 library (TXLED0 and TXLED1 were undefined) using Arduino 1.8.5:

1 Like

This is really cool! You might be able to use this to display like information about the PC it is running on :thinking:
Like CPU load and temperature. And you could render it all on the PC side and maybe even allow it to display a video when no button is pressed for like 5 minutes or something :wink:

1 Like

@igvina No idea if you’re still working on this, but could you publish/upload the code in its current incomplete state? Been trying to display some bitmaps on the Arduboy over serial recently and I’ve kind of hit a brick wall (that and the Arduboy actually bricking :stuck_out_tongue:). Really interested in how you’ve achieved this. thanks. :smile:

If you have a programmer you may be interested in @Mr.Blinky’s custom bootloader that supports streaming.

2 Likes

My custom bootloader has a built in streamer. no need to change/wipe the sketch. just trigger bootloader mode and stream away. You can grab the Bad Apple example demo from here:

It’s a python script that should run on most platforms.

1 Like