Giter VIP home page Giter VIP logo

protect-baby-monitor's Introduction

Protect Baby Monitor

An Open Source Baby Monitor for Android

Build Status

F-Droid

Protect Baby Monitor allows two Android devices to act as a baby monitor. The first device, left in the room with the baby, will advertise itself on the network and stream audio to a connected client. The second device, with the parent, will connect to the monitoring device and receive an audio stream.

Protect Baby Monitor works on Android 4.1 (Jelly Bean) and newer, i.e. Android SDK 16.

The current version of Protect Baby Monitor is rudimentary at best. It is capable of successfully advertising itself on the network, allows clients to connect, and streams audio. Room for improvement includes:

  1. Robust usage of the AudioTrack API
  2. Handle dropped packets gracefully

At the time this project was started there was no obvious open source solution for a baby monitor for Android. There are both free and paid options available for Android, including:

Thanks

App icon originals from Icons4Android and formatted using Android Asset Studio.

Audio file originals from freesound.

Note from Developer

The developer is currently on hiatus from the project. Questions and pull requests may not be looked at for some time. Apologies in advance.

protect-baby-monitor's People

Contributors

brarcher avatar johanehnberg avatar naofum avatar shacharr avatar

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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

protect-baby-monitor's Issues

"Discover Child on Network" feature doesn't work

Hello and thanks for developing this app!

I tested it and found a few issues.

App/devices info

ProtectBabyMonitor v0.3 (downloaded from F-Droid)
Devices:

  • Samsung Galaxy S7 edge (Android 8.0.0)
  • Oneplus One (Android 6.x)

Both devices are connected to the same network.

Steps

  1. Start the app on both devices (Samsung = parent device, Oneplus = child device)
  2. On the parent device, click Discover Child on Network

Expected result

The child device is shown.

Actual result

Nothing shows up, no matter how long I wait.

Additional information

The Select Child by Address works fine.

I have another Samsung Galaxy S7 edge (also running Android 8.0.0). If I replace the child device (Oneplus One) with this Samsung Galaxy S7 edge and set it to be a child device, I still cannot see it when clicking Discover Child on Network.

Please let me know what kind of logs I can attach, and how (I'm pretty tech-savvy but I'm not very familiar with Android development).

WiFi Direct support

It would be nice to have WiFi Direct support, for use without an access point present.

gonimo open source baby monitor

Hi there!

I just discovered your project, which is very similar to my own, gonimo. It is based on webrtc and currently a WebApp only. We plan on releasing an Android and iOS version too. I thought you might be interested, that there exists some friendly competition.

We are of course also on github!

I will definitely check out your solution! ;-)

Persistent notification

Hi,

Not an issue but a suggestion, it could be good to have a persistent notification when app is running. It could show information about connection.

I already have to put my ear close to speaker to be sure it still running. With a persistent notification this could be solved.

Notification could be used to see if client is still connected to server with a state like : ON / OFF / ERROR (with a label like : server protocole error, connection lost, etc.).
It could also switch on/off streaming (disconnect, connect to last server).
It can show other info about connection like address, poet, alias.
Anyways these are just some ideas. Don't know if you are listening to new features in your application.

Thanks for this useful application :)

No alarm when connection between parent and child device lost

App/devices info

ProtectBabyMonitor v0.3 (downloaded from F-Droid)
Devices:

  • Samsung Galaxy S7 edge (Android 8.0.0)
  • Oneplus One (Android 6.x)

Both devices are connected to the same network.

Steps

  1. Start the app on both devices (Samsung = parent device, Oneplus = child device)
  2. Connect the parent device to the child device using Select Child by Address
  3. Simulate a connection loss by turning airplane mode on on the child device.

Expected result

An alarm should go off on the parent device.

Actual result

Nothing happen on the parent device, which keeps saying "Listening..."

Additional information

Please let me know what kind of logs I can attach, and how (I'm pretty tech-savvy but I'm not very familiar with Android development).

After disconnecting I can see multiple instances of child device

When there happens some issue, likely a network hiccup, and the parent device disconnects when I try to search for a child device I see two of the. I can connect to one of the two, second disconnects immediately and adds one more duplicate record. It seems the last one is always the right choice.

Child device to parent connection over server

If direct connections e.g. in a hotel wireless network are forbidden, it would be useful to connect the child device to the parent device over a central server. The server code itself should also be open source and it should be possible to self host such a server.

Wifi connection constantly drops --> no continuous stream?

My setup experiences a lot of wifi disconnections (despite good signal and close router). I am wondering if changing to / adding an option for something like "no real audio stream" but "notification if a baby sound occurs" could make sense.

#enhancement

Try to reconnect automatically when connection lost

Hi, I love the idea of this app, I actually wanted to do the same.
I tried to use it in a "real world" situation tonight, for Christmas, but came across two main problems : unstable audio sound, like mentioned on #29, and more annoying : connection lost not tried to reconnect.
This is really surprising for a such "long term" software, it makes the app nearly useless :'(
My wi-fi network is actually good, I can stream HD movies without any problem. After using the app for some minutes, the connection dropped (I suppose this is probably a problem of background app killed by Android system). I got a sound indicating that the connection dropped (not continuous, but this is another issue treated elsewhere) but apparently the soft didn't tried to reconnect.

Am I wrong? Is the app trying to reconnect after a lost connection ?
I would have expected a continuous reconnection try.

Thanks

Testing lower API versions

Since using old phones as baby monitors is a great prospect, this could be explored further.

Current API is 17 which is now 5 years old and often still in use as phones.

Common phone API levels below that for phones' last firmware are 16, 15, 10 and 8.

I'd be happy to help test this app on those APIs and Android versions if someone makes the APKs.

Infinite signal on disconnection

Hi,

It could be good to be able to set an infinite signal when connection has dropped. This signal would be stopped by user action on screen.

Sometimes connection drop, and I don't hear it. I have to put my ear close to speaker to be sure it still running (see my last submitted "issue" ๐Ÿ˜…).

Regards

Settings feature not working in protect baby monitor

Expected behavior

i launched protect baby monitor, selected use as child device, tap on a 3 dotted icon which is the more options button, then click settings, so I can configure it.

Actual behavior

when i clicked the use as child device, i touched the settings button but nothing happened, didnt bring the setting features out.

How to reproduce

download

launch protect baby monitor,
click use as child device,
click the 3 dotted button by the right ,
then click the settings

Device Used: Infinix Note 3 or Infinix X601
Operating system: Android 7.0 Nougat
App version: 0.3 (3) - Added on 2018-02-20

Recording Of The Bug

<iframe width="560" height="315" src="https://www.youtube.com/embed/9p8GmYrIpIw" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>



Posted on Utopian.io - Rewarding Open Source Contributors

Document stream to linux

I found protect baby monitor quite useful to play android audio stream on linux.

ffplay -i tcp://$HOST:$PORT -f s16le -ac 1 -ar 11025

Maybe this should be noted in the documentation.

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.