Share your screen to a projector with only a web-browser.

Overview

picklecast - Simple Screen Cast Receiver

Screen share to a RaspberryPi or display computer connected to a projector or TV.

Quickstart

Install and start the server on the display computer or RPi:

$ pip install picklecast
$ picklecast
Server address: 192.168.1.100
Display URL: http://localhost:8443/display   http://192.168.1.100:8443/display
Client URL: http://192.168.1.100:8443/

Then open the display URL in a web-browser on the display computer. You can now share your screen from a personal device by visiting the client URL.

Optionally install as a user service on Linux to keep it running the background:

picklecast install_service
systemctl --user daemon-reload
systemctl --user start picklecast

How it Works

Picklecast is just a Python program that serves HTML and relays handshake messages between two browsers. The streaming and displaying is handled in Javascript in the display/client browsers using the WebRTC api.

Caveats

  • Audio sharing only supported when sharing from Chrome on Windows (bugzilla).
  • Currently there can be only one browser open to the display URL at a time
  • Only desktop browsers are supported, as mobile browsers don't support getDisplayMedia
You might also like...

Guardian - Securely Store and Share your Dev Secrets with your team

Guardian - Securely Store and Share your Dev Secrets with your team

Guardian Securely Store and Share your Dev Secrets with your team Presentation About The Project No more sharing private development secrets over inef

Oct 18, 2022

Make the content slide prettily across the screen with variable sizes of scrolling items, in any of four directions, pausing while the mouse is over the marquee, and all with vanilla JavaScript.

TEG Marquee Make the content slide prettily across the screen with variable sizes of scrolling items, in any of four directions, pausing while the mou

Dec 30, 2021

A server setup to take screenshots against the green screen in-game.

alt:V Clothing Green Screener Support on Patreon. Seriously. Ever want screenshots of every single clothing item in GTA:V? Well this is your repositor

Dec 26, 2022

A Deno library for interacting with the mouse 🖱️ keyboard ⌨️ and screen 💻

A Deno library for interacting with the mouse 🖱️ keyboard ⌨️ and screen 💻 . Litebot provides a simple API for creating kbm events, macros, & working with displays. Litebot leverages Deno's FFI to allow speedy low level control in C & C++ while having a typescript API exposed to the user.

Aug 30, 2022

As babies smash on the keyboard, images, letters and numbers appear on the screen

As babies smash on the keyboard, images, letters and numbers appear on the screen

Baby Bam Bam As babies smash on the keyboard, images, letters and numbers appear on the screen. Try the many options and find the ones that are right

Oct 24, 2022

A powerful data visualization 2D/3D large-screen editor tool with low-code.

tp-editor(2D/3D)中文说明 A topology 2D/3D editor with nodejs, express, socket.io es6, HT for Web and vite. It's a powerful large-screen data visualization

Dec 25, 2022

Implements Screen Space Reflections in three.js

Implements Screen Space Reflections in three.js

three.js Screen Space Reflections Implements performant Screen Space Reflections in three.js. Glossy Reflections Clean Reflections Example scene Demos

Dec 29, 2022

Responsive navigation plugin without library dependencies and with fast touch screen support.

Responsive Nav Responsive navigation plugin without library dependencies and with fast touch screen support. Responsive Nav is a tiny JavaScript plugi

Dec 29, 2022

A simple library to view large images up close using simple mouse interaction, and the full screen.

A simple library to view large images up close using simple mouse interaction, and the full screen.

Intense Images A stand alone javascript library for viewing images on the full, full screen. Using the touch/mouse position for panning. Here's a demo

Dec 31, 2022
Comments
  • websocket is not created correctly in a proxied environment

    websocket is not created correctly in a proxied environment

    Since the websocket address is created using window.location.hostname, any information regarding the true URL (e.g. the custom port) is missed. https://github.com/Evidlo/picklecast/blob/1ae55d17b0bf4c8b5ff5f30fea1f84f9bd46bd33/picklecast/webrtc.js#L25

    One possible fix would be to use window.location.href and strip the https:// part and the display part, if exists.

    Example: window.location.href.replace("https://","").replace("display","").

    opened by wgnann 1
Owner
Evan Widloski
PhD student in signal processing and remote sensing at University of Illinois, Urbana-Champaign
Evan Widloski
Easy and simple way to share data via mobile’s built-in share module.

React-Mobile-Share Provides an easy and simple way to share data (such as text, url and media) via mobile’s built-in share module. It is based on Web

EncoreSky Technologies 36 Dec 28, 2022
This tool uses native browser APIs to take screenshots of a given web page, tab, window, or the user's entire screen.

This tool uses native browser APIs to take screenshots of a given web page, tab, window, or the user's entire screen.

xataio 761 Jan 1, 2023
🌈 GitHub following, followers, only-following, only-follower tracker 🌈

github-following-tracker GitHub following, followers, only-following, only-follower tracker ?? Just enter your GitHub name and track your followings!

Youngkwon Kim 10 Jun 15, 2022
This project is a web app that uses the TVmaze API to retrieve data and display a list of items on the screen.

This project is a web app that uses the TVmaze API to retrieve data and display a list of items on the screen. It also enables people to like and comment on the broadcast. JavaScript, API, Bootstrap, HTML, and CSS3 were used to create this site.

Mihreteab Misganaw 2 Jan 10, 2022
A Browser extension that not only makes your browsing experience safe but makes it optimized

Sia Sia is a browser extension that not only makes your browsing experience safe but makes it optimized Table of Contents About The Project Built With

Arun Govind M 14 Feb 23, 2022
An application to capture screenshots automatically of your screen!

TASCA : The Automatic Screenshot Capturing Application An application to capture screenshots automatically of your screen! Report Bug · Request Featur

Piyush Sharma 1 Jan 27, 2022
Community-devlopper in a application web of devlopper to share all your projet and post ....

This is a Next.js project bootstrapped with create-next-app. Getting Started First, run the development server: npm run dev # or yarn dev Open http://

abdessalam staili 8 Jul 16, 2022
Share your (queer) art to your local LGBTQ+ community :3

art lav Share your (queer) art to your local LGBTQ+ community :3 watch a video of our demo! https://youtu.be/8Fp89tMSdFA The Problem Despite growing m

Nathan Endow 3 Jan 25, 2022
View maps, graphs, and tables of your save and compete in a casual, evergreen leaderboard of EU4 achievement speed runs. Upload and share your save with the world.

PDX Tools PDX Tools is a modern EU4 save file analyzer that allow users to view maps, graphs, and data tables of their save all within the browser. If

PDX Tools 24 Dec 27, 2022
Use XMind share to present your .xmind files on your blog or website.

XMind Embed Viewer Use XMind share to present your .xmind files on your blog or website. Demo Quick start Install As an npm module npm i xmind-embed-v

XMind Ltd. 25 Dec 7, 2022