August 27, 2013

Android Photo Apps

There are many android photo apps, and many of them have a different emphasis than what I want. Most are for people who are running Android on their phone and want to take photos using the camera on the phone, then do some kind of processing, and in many cases then transfer the photos to Facebook, or whatever cloud app they use to share their photos with their friends.

What I want is quite different. I want to use my Xoom tablet as a portable photo display gadget. I essentially never take photos using the camera on the android, and have no interest in doing any processing on the tablet. I just want to be able to store and recover photos, maybe do a slide show.

A recommended application for this kind of thing is QuickPic. It is advertised as being fast and capable of displaying photos pixel per pixel. I know the native resolution of my Xoom tablet is 1280 by 800, so I intend to resize my photos externally to fill this dimension without resizing on the Android.

Moving photos to the Xoom - linux

I have a group of almost 300 resized JPEG images on my linux machine that I would like to deposit on the Xoom. When I hook the Xoom tablet up via a USB cable, linux detects it just fine, but does not set it up as a mass storage device. Apparently though it will communicate using the "MTP" protocol, and the way to handle this is (on linux):
su
mkdir /mnt/xoom
mtpfs -o allow_other /mnt/xoom
cp *.jpg /mnt/xoom/Internal storage/Pictures
All this is well and good except that it simply does not work. It looks like mtpfs is a buggy piece of junk at this point in time. It does let me explore the Xoom filesystem (slowly, sort of). The copy attempts either complete quickly but do nothing or they lock up forever and are very slow to respond to a Control-C. Not good. When I am done I type:
umount /mnt/xoom
And it tells me the filesystem is busy, but then after a long wait I try it again and it works -- flakey as can be. Too bad. Hopeless at this time.

Moving photos to the Xoom - windows

At the suggestion of the wise Mr. Porter, I try doing things using a Windows 7 machine I have available. The game worked like this:
Boot the Xoom and unlock it.
Use USB cable to plug into Windows 7 machine.
It tells me it is installing software, then opens a menu labelled "Xoom".
I select "open device to view files"
I see two devices:
    Internal storage (27G free of 28.8)
    SD card (11G free of 29.7)
I double click internal storage
I see folder names slowly appearing (including Pictures!)
I double click Pictures
I make a new folder "sierras_8_13"
Now I go to my Z: drive which is a samba share from my linux machine
(this is /u1/share on the linux machine)
I put the photos I want to move here (inside "sierras_8_13)
A selection with a drag and drop gets the transfer going.
It is incredibly slow (I am moving 297 files, each which is about 200K in size). This should be reasonably fast over a USB 2.0 connection. I am moving a total of about 43 megabytes. In fact, it seems to have moved about 42 photos and then gotten stuck. I click "cancel" on the transfer and even that seems hung.

I decide to get ugly and pull the USB cable, and indeed this stops the nonsense. Then I plug it back in and try moving 20 files at a time. This works, but is tedious and leaves me wondering if there is a better way. Also windows has some convention I don't understand and now seems to be not copying but moving the files (which is OK in this case since I don't mind trashing the original directory, but in some situations would really make me angry). A case where an unambiguous command line would kick this mouse GUI's interfaces butt big time. I get the job done this way, but now find that the photo program on the Android (QuicPic) doesn't sort my files the same way the windows directory display does. Windows gets it right. Linux shows 100 through 109, then 10, and then on in some haywire order. QuicPic shows me img_1.jpg then img_10.jpg then img_100.jpg and so forth.

What I should do is rename the files to use 3 digit numbers with leading zeros. This is trivial under Linux, but then I have to do the transfer all over again. I guess it is worth it.


Have any comments? Questions? Drop me a line!

Adventures in Computing / tom@mmto.org