Google Drives SDK and powerpoint - java

I am currently developing a small android app using the google drive SDK/google doc's embedded player which will play through power point files in a slide-show manner. Since there's no direct way I can tell when one powerpoint ends and another begins using the SDK, I was wondering if there was any way for me to retrieve the number of slides from a power point. With the amount of slides I'll be attempting to use the interval between slide changes to calculate the time taken for each powerpoint to play and then using that I can switch through files. I know .pptx files carry the amount of slides in it's metadata (not so sure about .ppt), but I'm not sure how to go on reading it. I've looked at google drive SDK's part to read metadata, but it seems rather limited to what you can actually read. I've looked at ApachePOI but it doesn't seem it's android compatible. Could anyone point me in the right direction with this?
Thanks :).

Sorry, this is not possible using the Google Drive SDK. You could easily download the pptx, unzip it (it is just zipped XML) and extract the required metadata.

Related

Audio cache for small files android studio

I am developing a soundboard application in which I need to get the specified audio file from the server when the user requests it, but I don't want to stream it or download it every time, just the first time so I was thinking of caching it someway.
I made some research and I found the ExoPlayer library from google but I think it's kinda overkill for my purpose and I can't seem to get my head around it as I'm not so experienced in android development.
Is there any library that I can use?
If not, how can I make the process myself?
Save it to the file system the first time. Then you never have to download it again.

Image Recognition using OpenCv and android

I want to work on making an android app by integrating OpenCV with android Studio. I have a set of 2D hardcopy card images that i want to save as templates with in the app. Then, using the app, when i place my camera on any of the cards, the app should search the directory which contain the templates and look for match and provide feedback if a match is found. If anyone can guide on how to achieve this, it will be highly appreciated.
Also, if not OpenCV, then which SDK or tool should be preferred ?
The question is a general one, so the answer will be general as well, and will make assumptions about what you'd like to accomplish with your application.
Android Studio with OpenCV is probably a reasonable stack to use.
Presuming the library has more than a trivial number of images, you'll probably want to extract matching information for each image in your library in an offline process (on your code-development machine). So for instance, you would configure your development machine with a SQLite database driver and OpenCV, construct a program that extracts feature points and saves those to your a SQLite database. That file can then be loaded into the Android APK assets, and it would be ready upon the application's first use. The application would take frames from the camera and compare those with each item in the database, looking for matches.

Resize mp4 video with mp4parser

I'm trying to figure out how to resize/scale an mp4 video using mp4parser in an android app. After quite a bit of googling and looking through the mp4parser source and examples, I'm still not sure how to go about doing this.
Does mp4parser have some built in way of doing this?
If not, can I grab the raw video data and resize it myself using mp4parser? (a link to an example would be awesome if possible)
NOTES:
mp4parser website https://code.google.com/p/mp4parser/
I'm willing to consider using a different library than mp4parser, but I'd like something with licensing similar to LGPL. In other words, I am willing to supply library source code and give credit where credit is due, but I'd rather not be forced to make my source code publicly available. (This app will eventually be commercially available).
I need this functionality to append 2 files together that have different resolutions (taken from front camera and back camera).
I have successfully used mp4parser to append 2 files of the same resolutions.
I'm pretty new to video editing.
While I've relied on stackoverflow for many years, this is my very first question asked. Please be gentle. I'll gladly take constructive criticism on the proper way to ask questions here.
mp4parser will not have the ability to do this. To rescale a video, you must decode each frame, rescale then re-encode. ffmpeg (libavformat,libavcodec,swscale) can do this. As for LGPL compatibility, you may be able to achieve it for some codecs, but not all. I assume you are looking for LGPL to include this is a commercial app? If so, you must also license the codecs. For example, x264 is free/open source software. But distributing the videos it creates may require you to pay MPEG-LA.
I am searching it for long time. I couldn't find samples or example.
But i found working app in Google Play.
click to see

extract and show album art of mp3 file in android

I'm trying to implement a small mp3 player on android. So far so good, but I cant implement the following feature:
When playback of the file starts, check the file, get the artwork and display it.
(the artwork is embedded)
I've seen several libraries which claim to be capable of doing so, but I did not manage to implement it. (jaudiotagger, jid3)
Did somebody ever implement this and can show me some code?
Thank, Nico
Android doesn't support the standard ImageIO libraries which is why this part of jaudiotagger doesnt work with Android, there is an outstanding issue on jaudiotagger to resolve this issue for android.

Converting audio files(.3gp) to video with Album cover and uploading to YouTube

I have an audio file in .3gp format on my Android device which I wish
to upload to YouTube. I know that YouTube is a video upload site and
that I need to convert this sound file to video.
I just want an image to display all the time the audio is playing.
Google tells me there are number of tools that can help me. But I want
to do this via java code from my Android device.
Please help.
Thanks.
There are tools such as FFMPEG available for free that allow you to, essentially, mix and convert heterogenous streams. That is you can add a bitmap to a video, create video from slide shows and then add sound etc. (See a related question I asked here).
These programs can be executed from within java applications by making Runtime.exec(..) calls.
Sun has an example for stitching multiple JPEGs together into a movie, you can find it here. You should be able to take this example, (its fairly robust), and add what you need to it.
I recommend looking into the Java Media Framework (FAQ)
You can find a vast collection of sample applets/code at the Sun Solutions page. You can find the API on this page. I do hope this is compatible on the Android platform, as I haven't had any personal experience developing for it. But it might be a good place to start.

Categories