All Projects → razeware → Emitron Ios

razeware / Emitron Ios

Licence: apache-2.0
iOS version of emitron

Programming Languages

swift
15916 projects

Projects that are alternatives of or similar to Emitron Ios

Screen Recorder Ffmpeg Cpp
*Multimedia project* A screen recording application to capture your desktop and store in a video format. Click here to watch the demo
Stars: ✭ 98 (-45.86%)
Mutual labels:  video-streaming
Docker Streaming Server
Live streaming server
Stars: ✭ 141 (-22.1%)
Mutual labels:  video-streaming
Shaka Player Embedded
Shaka Player in a C++ Framework
Stars: ✭ 153 (-15.47%)
Mutual labels:  video-streaming
Node Tcp Streaming Server
Experimental TCP video streaming server written in node.js. Streaming over TCP and redistributing using WebSockets.
Stars: ✭ 100 (-44.75%)
Mutual labels:  video-streaming
Awesome Video
A curated list of awesome video frameworks, libraries, specifications and software.
Stars: ✭ 124 (-31.49%)
Mutual labels:  video-streaming
Hls Server
Middleware for serving HTTP Live Streaming (HLS) compatible media streams.
Stars: ✭ 146 (-19.34%)
Mutual labels:  video-streaming
Jquery Youtube Channels Playlist
jQuery plugin youtube playlist
Stars: ✭ 90 (-50.28%)
Mutual labels:  video-streaming
Ipywebrtc
WebRTC for Jupyter notebook/lab
Stars: ✭ 171 (-5.52%)
Mutual labels:  video-streaming
Vidgear
A High-performance cross-platform Video Processing Python framework powerpacked with unique trailblazing features 🔥
Stars: ✭ 2,048 (+1031.49%)
Mutual labels:  video-streaming
Laravel Video
A laravel package to stream video content.
Stars: ✭ 150 (-17.13%)
Mutual labels:  video-streaming
Nginx Vod Module
NGINX-based MP4 Repackager
Stars: ✭ 1,378 (+661.33%)
Mutual labels:  video-streaming
Arplayer
Playback videos using ARKit and AVFoundation.
Stars: ✭ 117 (-35.36%)
Mutual labels:  video-streaming
Stitchem
Vahana VR & VideoStitch Studio: software to create immersive 360° VR video, live and in post-production
Stars: ✭ 147 (-18.78%)
Mutual labels:  video-streaming
Hls.js
HLS.js is a JavaScript library that plays HLS in browsers with support for MSE.
Stars: ✭ 10,791 (+5861.88%)
Mutual labels:  video-streaming
Wallop
📺 A transcoding server for your HDHomeRun Prime
Stars: ✭ 165 (-8.84%)
Mutual labels:  video-streaming
Avideo
Create Your Own Broadcast Network With AVideo Platform Open-Source. OAVP OVP
Stars: ✭ 1,329 (+634.25%)
Mutual labels:  video-streaming
Srs
SRS is a simple, high efficiency and realtime video server, supports RTMP, WebRTC, HLS, HTTP-FLV, SRT and GB28181.
Stars: ✭ 16,734 (+9145.3%)
Mutual labels:  video-streaming
Stremio Addon Sdk
🧙 A Node.js SDK for creating and publishing Stremio add-ons
Stars: ✭ 175 (-3.31%)
Mutual labels:  video-streaming
Nodetube
Open-source YouTube alternative that offers video, audio and image uploads, livestreaming and built-in monetization
Stars: ✭ 2,066 (+1041.44%)
Mutual labels:  video-streaming
Ott Packager
OTT/ABR streaming encoder (H264/HEVC) and packager for DASH and HLS
Stars: ✭ 148 (-18.23%)
Mutual labels:  video-streaming

emitron (iOS)

emitron is the code name for the raywenderlich.com app. This repo contains the code for the iOS version of the app.

Contributing

To contribute a feature or idea to emitron, create an issue explaining your idea.

If you find a bug, please create an issue.

If you find a security vulnerability, please contact [email protected] as soon as possible. See SECURITY.md for further details.

There is more info about contributing in CONTRIBUTING.md.

Development

emitron runs on iOS 13.3 and greater. It uses SwiftUI and Combine extensively; and since these two technologies were very new at the time of creation, there are plenty of places in the code that could benefit from some refactoring.

Currently, only people that hold an active raywenderlich.com subscription may use emitron. Non-subscribers will be shown a "no access" page on login. Subscribers have access to streaming videos, and a subset of subscribers (ones with a "Professional" subscription) is allowed to download videos for offline playback.

Secrets Management

emitron requires 2 secrets:

  • SSO_SECRET. This is used to ensure secure communication with guardpost, the raywenderlich.com authentication service. Although this is secret, a sample secret is provided inside this repo. This shouldn't be used to create a beta or production build.
  • APP_TOKEN. Required in order to enable downloads. This is not provided in the repo, and is not generally available.

The secrets are stored in Emitron/Emitron/Configuration/secrets.*.xcconfig files, with one file for each deployment stage. These files have entries in the .gitignore, so they won't appear when you first download the repo.

To generate these files after you've first cloned the repository, execute the following command:

$ scripts/generate_secrets.sh

This will make the required copies of the template file, which includes an SSO secret appropriate for open-source development.

NOTE: To get the release build secrets, check the emitron S3 bucket, or contact [email protected]. Developers should never need these, as CI will handle it.

If you are working on the download functionality and are having problems without an APP_TOKEN, contact [email protected] and somebody will assist you with your specific needs.

Details

The two xcconfig files are used to configure the project. To access the values specified, these files must be added to the Info.plist file.

Use the Configuration struct to access these values from code.

For more details on this approach, check out https://nshipster.com/xcconfig/

SwiftLint

SwiftLint runs as part of the build process in Xcode, and errors/warnings are surfaced in Xcode as well. Please ensure that you run SwiftLint before submitting a pull request.

To install SwiftLint using homebrew:

$ brew install swiftlint

Xcode will automatically run SwiftLint if it is installed.

Continuous Integration & Deployment

emitron uses GitHub Actions to perform continuous integration and deployment. Every PR is built and tested before it can be merged.

  • Merges to development will create a new build of the emitron β app on TestFlight.
  • Merges to production will create a new build of the emitron production app on TestFlight.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].