An open source iOS app that lets you use one device as a camera and another as a remote control for the camera

Overview







Q: What is Open Source Selfie Stick?
A: With this free app you can use any iPhone or iPad as a remote control for the camera on any other iPhone or iPad! Open Source Selfie Stick allows you to pair any two iOS devices over WiFi or Bluetooth and use one as a camera and the other as a remote control for that camera--just tap the button on the remote control iPhone/iPad, and the iPhone/iPad designated as the camera will snap a photo. You can choose to save the photos to the camera device, the remote control device, or both! The app acts as a sort-of "virtual" selfie stick.

Q: How does this app work?
A: This app leverages the Multipeer Connectivity Framework to allow the devices to communicate over WiFi or Bluetooth.

Q: Does it work well over Bluetooth?
A: Bluetooth is much slower than WiFi. It can take 10-20 seconds to send a photo from the camera to the remote control over Bluetooth; over WiFi this process takes 2-3 seconds. If you do not wish to save the photos to the iPhone/iPad acting as the remote control, Bluetooth will suffice.

Q: Can I contribute to the development of this app?
A: Yes! Feel free to fork this repo, look at the to-do list, and make a pull request. The master branch represents the code of the app that is currently available in the app store. The dev branch will be the codebase for the next app update. If you'd like you contribute, you should fork the dev branch.

Q: Can I download this app from the App Store?
A: Yes! Click here to be taken to the App Store. Alternatively, you can download this project on any Mac, open it with Xcode 7.2.1, and build it on any Apple mobile device with iOS v8.1 or higher via USB.

Q: I found a bug. How do I report it?
A: Create a new issue on GitHub's issue tracker. Please provide as much detail as possible so we can attempt to reproduce the error you're experiencing.

Q: How did you make this app?
A: To learn more about how this app was made, check out the tutorial I created which details the process of using the Multipeer Connectivity Framework to transfer data between two devices.

TO DO

  • Give user the option to save photos on either or both devices
  • Add an optional timer
  • Add file transfer progress bar if remote control device is receiving a file
  • Viewable gallery of photos from current/most recent session
  • Make a more aesthetically pleasing UI
  • Share your newly taken photos on Facebook and Twitter with SocialKit
  • Allow the recording and sharing of video clips
  • Allow the device acting as the remote control to receive a live video feed
  • Allow multiple devices to act as cameras or remotes
  • Refactor
  • Come up with a better name than "Open Source Selfie Stick"
  • Add support for multiple languages



License
This software is licensed under the MPL version 2.0.

Logo credits
Logo created with Logo Maker. The camera, person, and phone icons seens within the logo are by Freepik from Flaticon. They are licensed under CC BY 3.0. These icons are also used in the App icon and within the app itself. The shields visible in this README are made possible by Shields.IO.

Special Thanks
Thanks to Joystick Interactive, Alex Konrad, Ralf Ebert, Ray Wenderlich, and my wife.
Without them this project may not exist.

You might also like...
DrawerKit lets an UIViewController modally present another UIViewController in a manner similar to the way Apple's Maps app works.
DrawerKit lets an UIViewController modally present another UIViewController in a manner similar to the way Apple's Maps app works.

DrawerKit What is DrawerKit? DrawerKit is a custom view controller presentation mimicking the kind of behaviour in the Apple Maps app. It lets any vie

TwilioChat_iOS - Twilio iOS SDK Implementaion Chat one-one Chat One-Many (Group)

TwilioChat_iOS - Twilio iOS SDK Implementaion Chat one-one Chat One-Many (Group) - Add Participant - Remove Participant Send Attachment Image Android - iOS Tested iOS - iOS Tested iOS - Android Tested React to Message, Delete a Message Read, Delivered, Sent Delete a Conversation Unread Messages Filter

PinpointKit is an open-source iOS library in Swift that lets your testers and users send feedback with annotated screenshots using a simple gesture.
PinpointKit is an open-source iOS library in Swift that lets your testers and users send feedback with annotated screenshots using a simple gesture.

PinpointKit is an open-source iOS library in Swift that lets your testers and users send feedback with annotated screenshots using a simple gesture. F

An open source library that lets your users draw on things - mark up images with text, shapes, etc.
An open source library that lets your users draw on things - mark up images with text, shapes, etc.

Drawsana 0.12.0 Drawsana is a generalized framework for making freehand drawing views on iOS. You can let users scribble over images, add shapes and t

Minimal edits from one collection to another
Minimal edits from one collection to another

Changeset Changeset – pretty awesome little project — Joel Levin This is an attempt at implementing the solution outlined in Dave DeLong’s article, Ed

A view that takes a set of images, make transition from one to another by using flipping effects.
A view that takes a set of images, make transition from one to another by using flipping effects.

CDFlipView A view that takes a set of images, make transition from one to another by using flipping effects. Demo Live Demo: https://appetize.io/app/w

AudioKit Synth One: Open-Source iOS Synthesizer App
AudioKit Synth One: Open-Source iOS Synthesizer App

AudioKit Synth One We've open-sourced the code for this synthesizer so that everyone is able to make changes to the code, introduce new features, fix

The one and only open source 4X MMO mid-core strategy game for iOS. Similar to Game of War and Mobile Strike

4X MMO Strategy Game for iOS I have spent 4 years of my life and a significant amount of money into completing this game and I hope you enjoy it. For

Scrcpy-iOS.app is a remote control tool for Android Phones
Scrcpy-iOS.app is a remote control tool for Android Phones

Scrcpy-iOS About Scrcpy-iOS.app is a remote control tool for Android Phones based on [https://github.com/Genymobile/scrcpy]. Features: Connect remote

A tool to build projects on MacOS and a remote linux server with one command

DualBuild DualBuild is a command line tool for building projects on MacOS and a remote Linux server. ##Setup Install the repository git clone https://

App which lets two people share their social media details by simply putting one phone on top of the other ("tapping"). Currently in development by Nikita Mounier.

Tap It Tap It enables two people to seamlessly share their social media information (e.g. Instagram, Snapchat, phone number) by simply placing one scr

iOS app for Technex, IIT(BHU) Varanasi. This project is closed before completion. You can use this app for learning purpose. You can use this app as a templet of any event related app.
iOS app for Technex, IIT(BHU) Varanasi. This project is closed before completion. You can use this app for learning purpose. You can use this app as a templet of any event related app.

technex-ios iOS app for Technex, IIT(BHU) Varanasi. This project is closed before completion for some reasons. You can use this app for learning purpo

PiPifier - a macOS and iOS Safari extension that lets you use every HTML5 video in Picture in Picture mode
PiPifier - a macOS and iOS Safari extension that lets you use every HTML5 video in Picture in Picture mode

PiPifier is a macOS 10.12 and iOS Safari (action) extension that lets you use every HTML5 video in Picture in Picture mode macOS Download It'

An open-source library to use with SwiftUI, It allows you to create Floating menu action button.
An open-source library to use with SwiftUI, It allows you to create Floating menu action button.

Floating Menu Action Button Example Overview This is an open-source library to use with SwiftUI. It allows you to create Floating menu action button. Ins

A realistic reflective shimmer to SwiftUI Views that uses device orientation. Position any View relative to device orientation to appear as if through a window or reflected by the screen.
A realistic reflective shimmer to SwiftUI Views that uses device orientation. Position any View relative to device orientation to appear as if through a window or reflected by the screen.

A 3d rotation effect that uses Core Motion to allow SwiftUI views to appear projected in a specific direction and distance relative to the device in r

Kanvas is an open-source iOS library for adding effects, drawings, text, stickers, and making GIFs from existing media or the camera.
Kanvas is an open-source iOS library for adding effects, drawings, text, stickers, and making GIFs from existing media or the camera.

Kanvas Kanvas is an open-source iOS library for adding effects, drawings, text, stickers, and making GIFs from existing media or the camera.

iOS app to automagically control device torch/flash and capture photos
iOS app to automagically control device torch/flash and capture photos

BlobStar ✨ Version française 🇫🇷 iOS application to automagically control the device torch/flash and capture photos. The software was quickly drafted

Library for iOS Camera API. CameraKit helps you add reliable camera to your app quickly.
Library for iOS Camera API. CameraKit helps you add reliable camera to your app quickly.

CameraKit helps you add reliable camera to your app quickly. Our open source camera platform provides consistent capture results, service that scales, and endless camera possibilities.

An iOS app that leverages the device camera and AVKit to calculate brightness.

Libre Light Sensor Privacy Policy Libre Light Sensor An iOS app that leverages the device camera and AVKit to calculate brightness. This app requires

Comments
  • [Not a bug, but a suggestion] show live preview on the cam controller screen?

    [Not a bug, but a suggestion] show live preview on the cam controller screen?

    Hi Richard,

    I was test your project and found it could be more useful if the cam controller could show live preview on the screen before we tap to capture a photo. Do you think it is possible (easy) to add this functioning? Actually, I am also learning from your code. If you could give some suggestion, I could try to add this as a beginner.

    Thanks,

    Walter

    opened by walterjunjun 4
Releases(1.0)
Owner
Richard Nelson
Richard Nelson
Meme Maker open source iOS app made in Swift.

Meme Maker Add customized text to popular images, or choose your own, share with the world. Screens Features Select or search a meme from a huge colle

Meme Maker 60 Dec 17, 2022
Full source code for the ComicFlow comic reader for iPad

Overview Finally a comic reader for iPad done right! ComicFlow was designed with one goal in mind: providing the best experience for comic fans with l

Pierre-Olivier Latour 358 Dec 18, 2022
:eyes: Face detection and recognition iOS app with OpenCV

Facemotion Facemotion it's an iOS app, allowing you to find easily a contact by face recognition. Scan the face of a person, whether the contact is in

Remi ROBERT 170 Nov 15, 2022
wallabag app for iOS (for wallabag v2)

wallabag 2 official iOS wallabag is a self-hosted read-it-later app. Unlike other services, wallabag is free and open source. wallabag 2 official iOS

wallabag 139 Dec 29, 2022
iOS App that creates memes from images

MemeMaker - iOS App that creates memes from images Screenshots Meme Collection Empty Screen Collection Table Meme Editor Empty Editing Frameworks Used

Jerome Pullen Jr. 0 Oct 26, 2021
Vector illustration app for the iPad.

Inkpad Inkpad is a vector illustration app designed from scratch for the iPad. It supports paths, compound paths, text, images, groups, masks, gradien

Steve Sprang 2.6k Dec 30, 2022
Steganography on iOS and macOS

Pictograph Pictograph is the best steganography app available for iOS and macOS. Easily send hidden messages to anyone you want. You can even encrypt

Adam Boyd 60 Nov 24, 2022
Control Room : a macOS app that lets you control the simulators for iOS, tvOS, and watchOS

Control Room is a macOS app that lets you control the simulators for iOS, tvOS, and watchOS – their UI appearance, status bar configuration, and more.

null 0 Nov 30, 2021
RCalendarPicker A date picker control, Calendar calendar control, select control, calendar, date selection, the clock selection control.

RCalendarPicker RCalendarPicker Calendar calendar control, select control, calendar, date selection, the clock selection control. 日历控件 ,日历选择控件,日历,日期选择

杜耀辉 131 Jul 18, 2022
Simulate any device and settings on one simulator or device.

SwiftUI-Simulator Enables the following settings without settings or restarting the simulator or real device. Any device screen Light/Dark mode Locale

Yusuke Hosonuma 70 Dec 19, 2022