I have a USB device that provides a video stream to the computer. Normally I just use a program to display this information in a window. I'd like to have my Java program take this image data directly into my code. How is this possible?
I already have drivers and everything set up. I just need to let my program access the data stream coming in through USB. I imagine this might be similar to using a USB webcam?
you could try Xuggler
its an open source wrapper for FFmpeg to get started with it look at this java class from the xuggler package
or this tutorial here
or you could use the xuggler media tool .
The class i gave you link to should have anything you need to decode , play , and manipulate video from any source ... just change container.open(url...) change the URL to w.e source and it should work .
Here's an example project i once made with Xuggler :
Related
I am trying to capture video from an RTP stream into my Android application. I am using code from a project on github https://github.com/niqdev/ipcam-view. However, after I open up VLC on my computer and start streaming a video and connect my android device to the same network it does not display the video on my device. I don't know what I am doing wrong, any help would be greatly appreciated. Thanks.
This is the error message that I am getting after I run the application
if you need to play short videos you need to use the demo of VXG player for android. It is super easy to use but has a 2 min limitation.
It looks like the example you are working with works just with mjpeg not with rtp streams.
If limitations is not for you try this example: VLCSimple
It has the newest version of vlc-sdk and maybe they already fixed RTP deadlock bug.
Or just try to make the mjpeg stream using VLC:
DISPLAY=:0 cvlc -vvv --no-audio screen:// --screen-fps 1 --sout "#transcode{vcodec=MJPG,vb=800}:standard{access=http,mux=mpjpeg,dst=:18223/}" --sout-http-mime="multipart/x-mixed-replace;boundary=--7b3cc56e5f51db803f790dad720ed50a"
I will build a simple program that
Can play video file (.mp4) in my program.
Can extract the video, so that I can get the title, length, subtitle, and the audio, etc.
What is the library in Java that I should use?
I have googled, but I still can not find the best library. By the way, I have tried to download xuggler, but I can not find any file.exe that can install this library.
Please be kind because I never make a code regarding video player and video extractor.
For playing audio and video in your java program use Java Media Framework. It contains jar files that will provide you classes to play and handle audio and video files.
Use this tutorial for understanding of JMF.
I have successed to use xuggler in java. Xuggler website is suck because they don't keep good installer in their website. Every beginner who use xuggler must be have some trouble like me.
For every one who want to use Xuggler, you can follow this website
http://www.benfarahmand.com/2012/11/tutorial-using-xuggler-in-processing.html
the link to download file.exe xuggler is here: https://www.dropbox.com/s/oh7zcyilibzfoyb/xuggle-xuggler.5.1.0-win64-setup.exe
Thank you :)
I have the following problem: in my application I am supposed to connect to a VNC server, grab the icoming images and both save them as a video file (this part works) and publish as a RTMP stream to Red5 server.
Most of the video encoding part is based on Xuggler's screen recording tutorial app ( http://wiki.xuggle.com/MediaTool_Introduction#How_To_Take_Snapshots_Of_Your_Desktop ).
However, being a beginner in Java I can't seem to get the live streaming part to work. I know I am supposed to use IContainer, but even after reading this: How to transmit live video from within a Java application? and several other posts I don't really know how to adapt that to my application. Any help would be greatly appreciated, thanks!
In Android/Java, Is there any code example to capture the screenshot of a computer with good frames per second programatically and create video?
I'd like a tutorial or full source code to do this. I'd like the program to work with and without the device having been "rooted".
There is app in the play store called Screencast Video Recorder that does this. But you need to ROOT the device for it to work, so I know it can be done.
What's the best way to capture android screenshot and create a video programmatically on a non-rooted device?
There is an app called Telecine that is open source that allows you to record screens - the code can be found at https://github.com/JakeWharton/Telecine. All credit is to Jake Wharton.
If you need an example, you can find one at Commonsware's github page - Mark Murphy has provided a sample app for both screen capture and screen recording using the MediaProjection APIs.
you can capture the screen via using DDMS as adb runs and has permission to the framebuffer:
follow this link for more details :
http://thetechjournal.com/electronics/android/how-to-capture-screenshots-and-record-video-on-android-device.xhtml
ALSO
check this links may be get some ideas about what you need :
http://answers.oreilly.com/topic/951-how-to-capture-video-of-the-screen-on-android/
http://www.mightypocket.com/2010/09/installing-android-screenshots-screen-capture-screen-cast-for-windows/
and check this project :
http://sourceforge.net/projects/ashot/
hope this help .
Check the following link
https://code.google.com/p/java-remote-control/
in this project the owner has created a java remote control i.e. he has captured the images from the remote computer and transfer to server and convert it to movies with different format all you need to understand what he has done and implement the same for all your needs. you can access the full source code with SVN client from the following URL
http://java-remote-control.googlecode.com/svn/trunk/
Also you can look for the Remote class in java which provides createScreenCapture method
As of Android 4.4, there is a screen recording feature accessible via adb.
http://developer.android.com/tools/help/adb.html#screenrecord
The screenrecord command is a shell utility for recording the display of devices running Android 4.4 (API level 19) and higher. The utility records screen activity to an MPEG-4 file, which you can then download and use as part of a video presentation. This utility is useful for developers who want to create promotional or training videos without using a separate recording device.
Try this application from the market
https://play.google.com/store/apps/details?id=com.ms.screencastfree
** Does not work on Galaxy Nexus or Tegra 2/3 yet **
EDIT 28/11/2014
Lollipop has been released and provides a new Screen recording API
http://developer.android.com/about/versions/android-5.0.html#UI
Screen capturing and sharing
Android 5.0 lets you add screen capturing and screen sharing
capabilities to your app with the new android.media.projection APIs.
This functionality is useful, for example, if you want to enable
screen sharing in a video conferencing app.
The new createVirtualDisplay() method allows your app to capture the
contents of the main screen (the default display) into a Surface
object, which your app can then send across the network. The API only
allows capturing non-secure screen content, and not system audio. To
begin screen capturing, your app must first request the user’s
permission by launching a screen capture dialog using an Intent
obtained through the createScreenCaptureIntent() method.
For an example of how to use the new APIs, see the MediaProjectionDemo
class in the sample project.
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.