Git Product home page Git Product logo

spydroid-ipcamera's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

spydroid-ipcamera's Issues

MediaRecorder .start() fail - 38 with Android 5.0

        mMediaRecorder.setOutputFile(mSender.getFileDescriptor()); 
        mMediaRecorder.prepare();
        mMediaRecorder.start();

With above code lines, throw a IllegalStateException If mSender is a socket, I see it work fine with mMediaRecorder.setOutputFile(local_file). I think it a bug of Google API. Please help me check it.
Thank
Bao Doan

SetPreviewDisplay Failed

This error shows up on the web interface when I click on Disconnect and Connect again.
On the phone: preview video freezes.
Web interface: "An error occured :( SetPreviewDisplay Failed"

Simple workaround is to close and start Spydroid and to click on Connect again.
But it should refresh or simply off preview video after disconnecting or something.

SpyDroid 9.1

Streaming can not work in backgroud

The first congratulate and thank you for your fantastic project.

How I can make streaming work when the app is in background?

Thanks for your help.

Regards

Not working on Tab

Hey, yesterday I started developing this app by cloning, it is working on mobile devices but not on Tablet and android box. Please help me out for this

Change resolution will result as black screen.

Hi Guys,

I am facing black screen issue, when I changed the screen resolution. It is only working with default resolution only which is given 320240. Can you please suggest a solution . Which things I need to change in terms of Ex. 640480 resolution. I have also changed the bitrate and fps. But couldn't work.

worked only one time under android 8.0

spydroid v10 has worked exactly one time with vlc
since then vlc tells: VLC is unable to open the MRL 'rtsp://192.168.220.141:8086'.

live555 error: SETUP of'video/H264' failed 500 Internal Server Error
live555 error: Nothing to play for rtsp://192.168.220.141:8086
access_realrtsp warning: only real/helix rtsp servers supported for now
main error: open of `rtsp://192.168.220.141:8086' failed

html streams don#t work either.

missing packages - with temporary solution

Hello
these 3 packages are missing
net.majorkernelpanic.streaming.gl
net.majorkernelpanic.streaming.hw
net.majorkernelpanic.streaming.exceptions

hence I get a lot of warning of missing types.
what's wrong with these?
Do we need them? can you please push them to the master branch?

thanks for providing this awesome software

Camera: Error 2

When I use a VLC to connect to RTSP, the display is normal, but when I use a second VLC to connect, the first one will be stopped. The log is as follows:
2019-12-26 20:17:21.329 28836-31681/com.xzh.ipcamera I/RtspServer: Connection from 192.168.31.189
2019-12-26 20:17:21.331 28836-31681/com.xzh.ipcamera E/RtspServer: OPTIONS rtsp://192.168.31.29:8086/spydroid.sdp?id=0&h264=1000-20-480-320&flash=off&camera=front
2019-12-26 20:17:21.355 28836-31681/com.xzh.ipcamera E/RtspServer: DESCRIBE rtsp://192.168.31.29:8086/spydroid.sdp?id=0&h264=1000-20-480-320&flash=off&camera=front
2019-12-26 20:17:21.387 28836-31688/com.xzh.ipcamera E/VideoStream: zzx===>camera Id: 1
2019-12-26 20:17:21.382 28836-28836/com.xzh.ipcamera W/Thread-10: type=1400 audit(0.0:5278697): avc: denied { read } for name="u:object_r:camera_prop:s0" dev="tmpfs" ino=20798 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:object_r:camera_prop:s0 tclass=file permissive=0
2019-12-26 20:17:21.388 28836-31688/com.xzh.ipcamera E/libc: Access denied finding property "camera.hal1.packagelist"
2019-12-26 20:17:21.392 28836-28940/com.xzh.ipcamera E/Camera: Error 2
2019-12-26 20:17:21.392 28836-28940/com.xzh.ipcamera E/VideoStream: Error unknown with the camera: 2
2019-12-26 20:17:22.161 28836-31681/com.xzh.ipcamera E/RtspServer: SETUP 192.168.31.29:8086/trackID=1
2019-12-26 20:17:23.744 28836-31729/com.xzh.ipcamera I/OMXClient: Treble IOmx obtained
2019-12-26 20:17:23.751 28836-31729/com.xzh.ipcamera I/ExtendedACodec: setupVideoEncoder()
2019-12-26 20:17:23.753 28836-31729/com.xzh.ipcamera I/ACodec: setupAVCEncoderParameters with [profile: Main] [level: Level41]
2019-12-26 20:17:23.753 28836-31729/com.xzh.ipcamera I/ACodec: h264type nBFrames is 0, nAllowedPictureTypes is 3
2019-12-26 20:17:23.753 28836-31729/com.xzh.ipcamera I/ACodec: [OMX.google.h264.encoder] cannot encode color aspects. Ignoring.
2019-12-26 20:17:23.753 28836-31729/com.xzh.ipcamera I/ACodec: [OMX.google.h264.encoder] cannot encode HDR static metadata. Ignoring.
2019-12-26 20:17:23.753 28836-31729/com.xzh.ipcamera I/ACodec: setupVideoEncoder succeeded
2019-12-26 20:17:23.755 28836-31729/com.xzh.ipcamera W/ExtendedACodec: Failed to get extension for extradata parameter
2019-12-26 20:17:23.806 28836-31732/com.xzh.ipcamera I/MediaCodecInputStream: {max-bitrate=1000000, csd-1=java.nio.HeapByteBuffer[pos=0 lim=10 cap=10], mime=video/avc, width=416, bitrate=1000000, height=200, csd-0=java.nio.HeapByteBuffer[pos=0 lim=18 cap=18]}
2019-12-26 20:17:23.901 28836-31681/com.xzh.ipcamera E/RtspServer: PLAY 192.168.31.29:8086/
2019-12-26 20:17:31.900 28836-28939/com.xzh.ipcamera E/RtspServer: TEARDOWN 192.168.31.29:8086/
2019-12-26 20:17:31.962 28836-28939/com.xzh.ipcamera I/qtaguid: Untagging socket 62 failed errno=-22
2019-12-26 20:17:31.963 28836-28939/com.xzh.ipcamera I/RtspServer: Client disconnected
2019-12-26 20:17:45.618 28836-28843/com.xzh.ipcamera I/zygote64: Compiler allocated 6MB to compile void android.view.ViewRootImpl.performTraversals()
2019-12-26 20:18:11.658 28836-28843/com.xzh.ipcamera I/zygote64: Do full code cache collection, code=250KB, data=164KB
2019-12-26 20:18:11.659 28836-28843/com.xzh.ipcamera I/zygote64: After code cache collection, code=204KB, data=127KB
2019-12-26 20:18:21.924 28836-31681/com.xzh.ipcamera E/RtspServer: OPTIONS 192.168.31.29:8086/
2019-12-26 20:18:22.029 28836-31681/com.xzh.ipcamera E/RtspServer: TEARDOWN 192.168.31.29:8086/
2019-12-26 20:18:22.954 28836-31681/com.xzh.ipcamera I/qtaguid: Untagging socket 73 failed errno=-22
2019-12-26 20:18:22.955 28836-31681/com.xzh.ipcamera I/RtspServer: Client disconnected

A potential bug by a wrong indexer

Hi

In a recent code snapshot, I've found a following suspicious code in src/net/majorkernelpanic/streaming/video/CodecManager.java

157                                 for (int i = 0; i < types.length; i++) {
158                                         if (types[i].equalsIgnoreCase(mimeType)) {
159                                                 MediaCodecInfo.CodecCapabilities capabilities = codecInfo.getCapabilitiesForType(mimeType);
160 
161                                                 boolean software = false;
162                                                 for (int k=0;k<SOFTWARE_ENCODERS.length;k++) {
163                                                         if (codecInfo.getName().equalsIgnoreCase(SOFTWARE_ENCODERS[i])) {
164                                                                 software = true;
165                                                         }
166                                                 }

Currently, SOFTWARE_ENCODERS has only one value, so it might not be an issue if the length of types are not > 1. But wanted to report just in case. Thanks!

VLC not receiving any audio packets

hey hi, i was trying the example 2 application that uses this library with VLC on the other end as client playing using the sdp file. VLC recognises the audio track but its not receiving any audio blocks to decode. i guess something is not right with the audio streaming package. the spydroid app also had the same problem. i tried with both AAC and AMR. no use.

Latency

There seems to always be a 1 second - 3 second delay on the stream. I'd love to use this as the basis for an open source FPV (first person view) robotic controller application. Do you have any ideas on how to reduce the latency to 500ms or lower?

when i opened rtsp in vlc it return errors in win8.1

your app is Great,i installed it on android 4.1 when i opened rtsp in vlc my laptop,it returns errors in win8.1

VLC is unable to open the mrl

live555 error: Failed to connect with rtsp://192.168.137.2:9090
core error: open of `rtsp://192.168.137.2:9090' failed

can't play video(urgent)

Dear sir,
I have iBall Slide D7061. When i play rtsp then log create as i attached.
Please help. I am in trouble since 20 days.
Note: My code is working on all other devices i tested.
error.txt

"You need to install or update VLC and the VLC mozilla plugin!" with latest firefox under Linux

First thanks a lot for the nice app! It must be really helpful for many people under the siege we are in right now :)

Not sure if this is the same issue that I'm experiencing with a previous reporter (#11), but I guess it will be best to open a separate bug report (let me know if there's an open issue about he same thing, I might have missed it..)

OS is Mint 19.3
Firefox 76.0 (64-bit)
VLC is 3.0.8-0ubuntu18.04.1

The device is a OnePlus One with its default setup.

spydroid is the latest present version from F-Droid.

On an initial connection to the phone's portal address (i.e. 192.168.xx.xx:8080) the page greets me with a "You need to install or update VLC and the VLC mozilla plugin !".

I have all available plugins for vlc installed in Mint, but I'm really unsure if the reported missing plugin is not something not provided in Mint/Ubuntu repositories.

Let me know if I should share any other info in order to investigate this further.

Not playing in chrome

hello i have installed app from play store and gave the IP address in chrome which was mentioned on app first screen but player on chrome always says CONNECTION and status remain same that is TRYING TO CONNECT....whats the issue and how can i handle it...???

HTML5 player

Hi,
VLC player does not work very well anymore on osx. (looks like the api changed, I got javascript error:
Uncaught TypeError: Cannot read property 'add' of undefined ui.js:42 )

I'm interested in writing an html5 player.

Just looking whether this might already have been attempted.

Video is rotated

The video streamed form 7'' or 8'' tablets (where both back and front cameras are in the reversed landscape mode) is flipped. Actually if I open the test mp4 file used to get SDP -- the video is also flipped in the player.

How to updated the project with dependencies?

Hi
I cloned the project with Android Studio and the following imports give a compiler error:
import org.apache.http.ConnectionClosedException;
import org.apache.http.HttpException;
import org.apache.http.HttpServerConnection;
import org.apache.http.impl.DefaultConnectionReuseStrategy;
import org.apache.http.impl.DefaultHttpResponseFactory;
import org.apache.http.impl.DefaultHttpServerConnection;
import org.apache.http.params.BasicHttpParams;
import org.apache.http.params.CoreConnectionPNames;
import org.apache.http.params.CoreProtocolPNames;
import org.apache.http.params.HttpParams;
import org.apache.http.protocol.BasicHttpContext;
import org.apache.http.protocol.BasicHttpProcessor;
import org.apache.http.protocol.HttpContext;
import org.apache.http.protocol.HttpRequestHandler;
import org.apache.http.protocol.HttpRequestHandlerRegistry;
import org.apache.http.protocol.ResponseConnControl;
import org.apache.http.protocol.ResponseContent;
import org.apache.http.protocol.ResponseDate;
import org.apache.http.protocol.ResponseServer;
import org.apache.http.protocol.UriPatternMatcher;

import android.app.Service;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
import android.content.pm.PackageManager.NameNotFoundException;
import android.os.Binder;
import android.os.IBinder;
import android.preference.PreferenceManager;
import android.util.Log;
What is the best way to get them please? Did you use Maven or something?

Duplicate class com.google.ads.AdRequest found in modules GoogleAdMobAdsSdk-6.1.0.jar

Duplicate class com.google.ads.AdRequest found in modules GoogleAdMobAdsSdk-6.1.0.jar (GoogleAdMobAdsSdk-6.1.0.jar) and play-services-ads-lite-12.0.1-runtime.jar (com.google.android.gms:play-services-ads-lite:12.0.1)
Duplicate class com.google.ads.AdRequest$ErrorCode found in modules GoogleAdMobAdsSdk-6.1.0.jar (GoogleAdMobAdsSdk-6.1.0.jar) and play-services-ads-lite-12.0.1-runtime.jar (com.google.android.gms:play-services-ads-lite:12.0.1)
Duplicate class com.google.ads.AdRequest$Gender found in modules GoogleAdMobAdsSdk-6.1.0.jar (GoogleAdMobAdsSdk-6.1.0.jar) and play-services-ads-lite-12.0.1-runtime.jar (com.google.android.gms:play-services-ads-lite:12.0.1)
Duplicate class com.google.ads.AdSize found in modules GoogleAdMobAdsSdk-6.1.0.jar (GoogleAdMobAdsSdk-6.1.0.jar) and play-services-ads-lite-12.0.1-runtime.jar (com.google.android.gms:play-services-ads-lite:12.0.1)
Duplicate class com.google.ads.mediation.EmptyNetworkExtras found in modules GoogleAdMobAdsSdk-6.1.0.jar (GoogleAdMobAdsSdk-6.1.0.jar) and play-services-ads-lite-12.0.1-runtime.jar (com.google.android.gms:play-services-ads-lite:12.0.1)
Duplicate class com.google.ads.mediation.MediationAdRequest found in modules GoogleAdMobAdsSdk-6.1.0.jar (GoogleAdMobAdsSdk-6.1.0.jar) and play-services-ads-lite-12.0.1-runtime.jar (com.google.android.gms:play-services-ads-lite:12.0.1)
Duplicate class com.google.ads.mediation.MediationAdapter found in modules GoogleAdMobAdsSdk-6.1.0.jar (GoogleAdMobAdsSdk-6.1.0.jar) and play-services-ads-lite-12.0.1-runtime.jar (com.google.android.gms:play-services-ads-lite:12.0.1)
Duplicate class com.google.ads.mediation.MediationBannerAdapter found in modules GoogleAdMobAdsSdk-6.1.0.jar (GoogleAdMobAdsSdk-6.1.0.jar) and play-services-ads-lite-12.0.1-runtime.jar (com.google.android.gms:play-services-ads-lite:12.0.1)
Duplicate class com.google.ads.mediation.MediationBannerListener found in modules GoogleAdMobAdsSdk-6.1.0.jar (GoogleAdMobAdsSdk-6.1.0.jar) and play-services-ads-lite-12.0.1-runtime.jar (com.google.android.gms:play-services-ads-lite:12.0.1)
Duplicate class com.google.ads.mediation.MediationInterstitialAdapter found in modules GoogleAdMobAdsSdk-6.1.0.jar (GoogleAdMobAdsSdk-6.1.0.jar) and play-services-ads-lite-12.0.1-runtime.jar (com.google.android.gms:play-services-ads-lite:12.0.1)
Duplicate class com.google.ads.mediation.MediationInterstitialListener found in modules GoogleAdMobAdsSdk-6.1.0.jar (GoogleAdMobAdsSdk-6.1.0.jar) and play-services-ads-lite-12.0.1-runtime.jar (com.google.android.gms:play-services-ads-lite:12.0.1)
Duplicate class com.google.ads.mediation.MediationServerParameters found in modules GoogleAdMobAdsSdk-6.1.0.jar (GoogleAdMobAdsSdk-6.1.0.jar) and play-services-ads-lite-12.0.1-runtime.jar (com.google.android.gms:play-services-ads-lite:12.0.1)
Duplicate class com.google.ads.mediation.MediationServerParameters$MappingException found in modules GoogleAdMobAdsSdk-6.1.0.jar (GoogleAdMobAdsSdk-6.1.0.jar) and play-services-ads-lite-12.0.1-runtime.jar (com.google.android.gms:play-services-ads-lite:12.0.1)
Duplicate class com.google.ads.mediation.MediationServerParameters$Parameter found in modules GoogleAdMobAdsSdk-6.1.0.jar (GoogleAdMobAdsSdk-6.1.0.jar) and play-services-ads-lite-12.0.1-runtime.jar (com.google.android.gms:play-services-ads-lite:12.0.1)
Duplicate class com.google.ads.mediation.NetworkExtras found in modules GoogleAdMobAdsSdk-6.1.0.jar (GoogleAdMobAdsSdk-6.1.0.jar) and play-services-ads-lite-12.0.1-runtime.jar (com.google.android.gms:play-services-ads-lite:12.0.1)
Duplicate class com.google.ads.mediation.admob.AdMobAdapter found in modules GoogleAdMobAdsSdk-6.1.0.jar (GoogleAdMobAdsSdk-6.1.0.jar) and play-services-ads-lite-12.0.1-runtime.jar (com.google.android.gms:play-services-ads-lite:12.0.1)
Duplicate class com.google.ads.mediation.customevent.CustomEventAdapter found in modules GoogleAdMobAdsSdk-6.1.0.jar (GoogleAdMobAdsSdk-6.1.0.jar) and play-services-ads-lite-12.0.1-runtime.jar (com.google.android.gms:play-services-ads-lite:12.0.1)
Duplicate class com.google.ads.mediation.customevent.CustomEventBanner found in modules GoogleAdMobAdsSdk-6.1.0.jar (GoogleAdMobAdsSdk-6.1.0.jar) and play-services-ads-lite-12.0.1-runtime.jar (com.google.android.gms:play-services-ads-lite:12.0.1)
Duplicate class com.google.ads.mediation.customevent.CustomEventBannerListener found in modules GoogleAdMobAdsSdk-6.1.0.jar (GoogleAdMobAdsSdk-6.1.0.jar) and play-services-ads-lite-12.0.1-runtime.jar (com.google.android.gms:play-services-ads-lite:12.0.1)
Duplicate class com.google.ads.mediation.customevent.CustomEventInterstitial found in modules GoogleAdMobAdsSdk-6.1.0.jar (GoogleAdMobAdsSdk-6.1.0.jar) and play-services-ads-lite-12.0.1-runtime.jar (com.google.android.gms:play-services-ads-lite:12.0.1)
Duplicate class com.google.ads.mediation.customevent.CustomEventInterstitialListener found in modules GoogleAdMobAdsSdk-6.1.0.jar (GoogleAdMobAdsSdk-6.1.0.jar) and play-services-ads-lite-12.0.1-runtime.jar (com.google.android.gms:play-services-ads-lite:12.0.1)
Duplicate class com.google.ads.mediation.customevent.CustomEventListener found in modules GoogleAdMobAdsSdk-6.1.0.jar (GoogleAdMobAdsSdk-6.1.0.jar) and play-services-ads-lite-12.0.1-runtime.jar (com.google.android.gms:play-services-ads-lite:12.0.1)
Duplicate class com.google.ads.mediation.customevent.CustomEventServerParameters found in modules GoogleAdMobAdsSdk-6.1.0.jar (GoogleAdMobAdsSdk-6.1.0.jar) and play-services-ads-lite-12.0.1-runtime.jar (com.google.android.gms:play-services-ads-lite:12.0.1)

Go to the documentation to learn how to Fix dependency resolution errors.

High resolutions don't work

My phone is Galaxy S7, Android 8.0.0 stock. 352x288, 30 FPS seems to be the best I can get.

Here's what I get when the preview in VLC works, but FPS and resolution don't match:
[darkognu@DarkoGNU ~]$ vlc "rtsp://192.168.0.104:8086?h264=5000-60-480-360"
VLC media player 3.0.9.2 Vetinari (revision 3.0.9.2-0-gd4c1aefe4d)
[0000555cb84e65b0] main libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface.
Created new TCP socket 26 for connection
[00007f279000b6b0] avcodec decoder: Using NVIDIA VDPAU Driver Shared Library 440.82 Wed Apr 1 19:39:06 UTC 2020 for hardware decoding
[00007f279000b6b0] main decoder error: buffer deadlock prevented

Here's what I get when it doesn't work at all:
[darkognu@DarkoGNU ~]$ vlc "rtsp://192.168.0.104:8086?h264=5000-60-1920-1080"
VLC media player 3.0.9.2 Vetinari (revision 3.0.9.2-0-gd4c1aefe4d)
[0000561997f515b0] main libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface.
Created new TCP socket 26 for connection
[00007f08ec001140] live555 demux error: SETUP of'video/H264' failed 500 Internal Server Error
[00007f08ec001140] live555 demux error: Nothing to play for rtsp://192.168.0.104:8086?h264=5000-60-1920-1080
[00007f08ec002f50] satip stream error: Failed to setup RTSP session
Created new TCP socket 27 for connection
[00007f08ec009710] live555 demux error: SETUP of'video/H264' failed 500 Internal Server Error

And it repeats. Any ideas?

Can't work on android 4.4.2

when works on android 4.4.2,I cant receive any video from vlc player,but it works fine when android version bellow 4.4.3

Callback buffer was too small!!!

how can i resolve this problem?
12-08 15:18:54.286: E/Camera-JNI(32587): Callback buffer was too small! Expected 3110400 bytes, but got 38016 bytes!
12-08 15:18:54.286: E/Camera-JNI(32587): Couldn't allocate byte array for JPEG data
12-08 15:18:54.291: D/MzSplitActionBarContainer(32587): onMeasure:mBackButton=null; mMenuView=null; mEnableBackButton=false
12-08 15:18:54.291: D/MzSplitActionBarContainer(32587): onMeasure:backButtonWidth=0; menuWidth=0
12-08 15:18:54.316: E/Camera-JNI(32587): Callback buffer was too small! Expected 3110400 bytes, but got 38016 bytes!
12-08 15:18:54.316: E/Camera-JNI(32587): Couldn't allocate byte array for JPEG data
12-08 15:18:54.341: E/Camera-JNI(32587): Null byte array!
12-08 15:18:54.341: E/AndroidRuntime(32587): FATAL EXCEPTION: Thread-1037
12-08 15:18:54.341: E/AndroidRuntime(32587): Process: net.majorkernelpanic.spydroid, PID: 32587
12-08 15:18:54.341: E/AndroidRuntime(32587): java.lang.NullPointerException: Attempt to read from null array
12-08 15:18:54.341: E/AndroidRuntime(32587): at net.majorkernelpanic.streaming.hw.NV21Convertor.convert(NV21Convertor.java:141)
12-08 15:18:54.341: E/AndroidRuntime(32587): at net.majorkernelpanic.streaming.hw.NV21Convertor.convert(NV21Convertor.java:108)
12-08 15:18:54.341: E/AndroidRuntime(32587): at net.majorkernelpanic.streaming.video.VideoStream$2.onPreviewFrame(VideoStream.java:455)
12-08 15:18:54.341: E/AndroidRuntime(32587): at android.hardware.Camera$EventHandler.handleMessage(Camera.java:1127)
12-08 15:18:54.341: E/AndroidRuntime(32587): at android.os.Handler.dispatchMessage(Handler.java:102)
12-08 15:18:54.341: E/AndroidRuntime(32587): at android.os.Looper.loop(Looper.java:135)
12-08 15:18:54.341: E/AndroidRuntime(32587): at net.majorkernelpanic.streaming.video.VideoStream$3.run(VideoStream.java:542)
12-08 15:18:54.341: E/AndroidRuntime(32587): at java.lang.Thread.run(Thread.java:818)

Higher resolution and bitrate streaming?

I'm experimenting with using a OnePlus 5T phone as a camera for my YouTube videos.
I'd want to stream the image to my Linux PC for capture.
If I can get the image in Full HD, 60FPS in decent bitrate via RDP, I can capture that with VLC to a file.

The camera of that phone can also capture 4K 30 FPS video, I'd love to be able to stream that too.

SpyDroid seems to be lacking some options here though ;)

Latency will accumulate.

When open a client with VideoView, the latency is about 5~6 sec, as the time goes by, latency increased. after 0.5hour, latency will be about 50 sec.

Maybe the time stamp is wrong?

There should be force start button or setting.

I see "Turn on wiki or tethering" and HTTP and RTSP ports are closed.

Although Anroid does not know about custom reverse tethering network set from root, I expect Spydroid to be able to just listen 0.0.0.0 and accept connections from nowhere.

If I enable Wi-Fi it works also from cable.

How do I build this project?

Just to clarify, I'm not very familiar with neither java or any of its build tools (gradle, maven, etc.), nor android development in general, and even though I've tried to build this project, I just get build errors.

I see there's a file called build.xml in the project root, but I'm still not sure what tool to use it with.

So how would I go about building this application and compiling it into an apk?

cannot work on Nexus 5, android4.4.2

12-20 13:48:42.746 26266-5118/net.majorkernelpanic.spydroid E/TinyHttpServer﹕ Fail to connect to camera service
12-20 13:48:42.746 26266-5118/net.majorkernelpanic.spydroid W/System.err﹕ java.lang.RuntimeException: Fail to connect to camera service
12-20 13:48:42.746 26266-5118/net.majorkernelpanic.spydroid W/System.err﹕ at android.hardware.Camera.native_setup(Native Method)
12-20 13:48:42.746 26266-5118/net.majorkernelpanic.spydroid W/System.err﹕ at android.hardware.Camera.(Camera.java:350)
12-20 13:48:42.746 26266-5118/net.majorkernelpanic.spydroid W/System.err﹕ at android.hardware.Camera.open(Camera.java:309)
12-20 13:48:42.746 26266-5118/net.majorkernelpanic.spydroid W/System.err﹕ at net.majorkernelpanic.streaming.video.VideoStream.createCamera(VideoStream.java:444)
12-20 13:48:42.746 26266-5118/net.majorkernelpanic.spydroid W/System.err﹕ at net.majorkernelpanic.streaming.video.H264Stream.testH264(H264Stream.java:126)
12-20 13:48:42.746 26266-5118/net.majorkernelpanic.spydroid W/System.err﹕ at net.majorkernelpanic.streaming.video.H264Stream.generateSessionDescription(H264Stream.java:84)
12-20 13:48:42.746 26266-5118/net.majorkernelpanic.spydroid W/System.err﹕ at net.majorkernelpanic.streaming.Session.getSessionDescription(Session.java:165)
12-20 13:48:42.746 26266-5118/net.majorkernelpanic.spydroid W/System.err﹕ at net.majorkernelpanic.spydroid.api.CustomHttpServer$DescriptionRequestHandler.handle(CustomHttpServer.java:268)
12-20 13:48:42.746 26266-5118/net.majorkernelpanic.spydroid W/System.err﹕ at org.apache.http.protocol.HttpService.doService(HttpService.java:243)
12-20 13:48:42.746 26266-5118/net.majorkernelpanic.spydroid W/System.err﹕ at org.apache.http.protocol.HttpService.handleRequest(HttpService.java:187)
12-20 13:48:42.746 26266-5118/net.majorkernelpanic.spydroid W/System.err﹕ at net.majorkernelpanic.http.TinyHttpServer$WorkerThread.run(TinyHttpServer.java:651)

Is this project still alive?

This project seems to be not correctly working on modern android versions. The last commit is by seven years ago.
Is this project still alive?
Do you need help?
@fyhertz

Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.ads.AdView"

2020-05-07 11:30:04.809 1684-1684/net.majorkernelpanic.spydroid E/AndroidRuntime: FATAL EXCEPTION: main
Process: net.majorkernelpanic.spydroid, PID: 1684
java.lang.RuntimeException: Unable to start activity ComponentInfo{net.majorkernelpanic.spydroid/net.majorkernelpanic.spydroid.ui.SpydroidActivity}: android.view.InflateException: Binary XML file line #52: Binary XML file line #52: Error inflating class com.google.ads.AdView
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2856)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2931)
at android.app.ActivityThread.-wrap11(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1620)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:173)
at android.app.ActivityThread.main(ActivityThread.java:6698)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:782)
Caused by: android.view.InflateException: Binary XML file line #52: Binary XML file line #52: Error inflating class com.google.ads.AdView
Caused by: android.view.InflateException: Binary XML file line #52: Error inflating class com.google.ads.AdView
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.ads.AdView" on path: DexPathList[[zip file "/data/app/net.majorkernelpanic.spydroid-JdFKPgwwjViQUFOkk3zFhA==/base.apk"],nativeLibraryDirectories=[/data/app/net.majorkernelpanic.spydroid-JdFKPgwwjViQUFOkk3zFhA==/lib/arm64, /system/lib64, /system/vendor/lib64]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:93)
at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
at android.view.LayoutInflater.createView(LayoutInflater.java:610)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:794)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:734)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:867)
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:828)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:870)
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:828)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:870)
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:828)
at android.view.LayoutInflater.inflate(LayoutInflater.java:519)
at android.view.LayoutInflater.inflate(LayoutInflater.java:427)
at android.view.LayoutInflater.inflate(LayoutInflater.java:374)
at com.android.internal.policy.PhoneWindow.setContentView(PhoneWindow.java:418)
at android.app.Activity.setContentView(Activity.java:2708)
at net.majorkernelpanic.spydroid.ui.SpydroidActivity.onCreate(SpydroidActivity.java:86)
at android.app.Activity.performCreate(Activity.java:7040)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1214)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2809)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2931)
at android.app.ActivityThread.-wrap11(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1620)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:173)
at android.app.ActivityThread.main(ActivityThread.java:6698)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:782)

resolution is bigger than 352, 288?

when I set resolution bigger than 352, 288,it occur error.(But I'm sure my phone support the resolution)
error msg:
12-07 14:46:33.163: E/RtspServer(11095): SETUP 192.168.1.104:3333/trackID=0
12-07 14:46:33.263: E/RtspServer(11095): SETUP 192.168.1.104:3333/trackID=1
12-07 14:46:33.433: E/CheckPermission(11095): camera-code= 3
12-07 14:46:33.633: E/CheckPermission(11095): media_record-code= 24
12-07 14:46:33.633: E/CheckPermission(11095): media_record-code= 22
12-07 14:46:33.633: E/CheckPermission(11095): media_record-code= 2
12-07 14:46:33.633: E/CheckPermission(11095): media_record-code= 23
12-07 14:46:33.633: E/CheckPermission(11095): media_record-code= 11
12-07 14:46:33.633: E/CheckPermission(11095): media_record-code= 13
12-07 14:46:33.633: E/CheckPermission(11095): media_record-code= 14
12-07 14:46:33.633: E/CheckPermission(11095): media_record-code= 18
12-07 14:46:33.633: E/CheckPermission(11095): media_record-code= 19
12-07 14:46:33.633: E/CheckPermission(11095): media_record-code= 20
12-07 14:46:33.633: E/CheckPermission(11095): media_record-code= 17
12-07 14:46:33.633: E/CheckPermission(11095): media_record-code= 21
12-07 14:46:33.633: E/CheckPermission(11095): media_record-code= 9
12-07 14:46:33.633: E/CheckPermission(11095): media_record-code= 8
12-07 14:46:33.643: E/MediaRecorder(11095): start failed: -38
12-07 14:46:33.643: E/RtspServer(11095): An error occurred
12-07 14:46:33.643: E/Parcel(11095): Reading a NULL string not supported here.
12-07 14:46:33.653: E/Parcel(11095): Reading a NULL string not supported here.
12-07 14:46:33.653: E/Parcel(11095): Reading a NULL string not supported here.
12-07 14:46:33.663: E/Parcel(11095): Reading a NULL string not supported here.
12-07 14:46:33.663: E/Parcel(11095): Reading a NULL string not supported here.
12-07 14:46:33.663: E/Parcel(11095): Reading a NULL string not supported here.
12-07 14:46:33.663: E/Parcel(11095): Reading a NULL string not supported here.

Not working on 3G or 4G

why is not working when streaming video via 3G 4G network?
How to stream the video and audio on spydroid via 3G 4G network. any suggestion ?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.