Skip to main content

Grande Unicast M ulticast S ender

gums is multicast that just works, right out of the box.


gums is designed for multicast mpegts video, but works with any multicast stream.

Latest is v.0.0.31

image

Install

python3 -mpip install gums

Use gums (Sender) programmatically

a@debian:~/gums$ pypy3
Python 3.9.16 (7.3.11+dfsg-2, Feb 06 2023, 16:52:03)
[PyPy 7.3.11 with GCC 12.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>> from gums import GumS
>>>> gummie = GumS("235.35.3.5:3535")
>>>> gummie.send_stream("/home/a/mpegts/pcrvid.ts")

	Multicast Stream
	udp://@235.35.3.5:3535

	Source
	0.0.0.0:38835

49636512 Bytes Sent

>>>> 

gums (Sender) cli

  • Supported input mpegts URIs:

    • files gums -i /home/me/vid.ts

    • http(s) gums -i https://futzu.com/xaa.ts

    • udp gums -i udp://127.0.0.1:4000

    • multicast gums -i udp://@235.1.2.3:4567

    • reading from stdin cat myvideo.ts | gums

usage: gums [-h] [-i INPUT] [-a ADDR] [-b BIND_ADDR] [-t TTL] [-v]

optional arguments:
  -h, --help           Show this help message and exit

-i INPUT, --input INPUT
                       Like "/home/a/vid.ts" or "udp://@235.35.3.5:3535" or "https://futzu.com/xaa.ts"

-a ADDR, --addr ADDR     
                       Destination IP:Port like "227.1.3.10:4310"

-b BIND_ADDR, --bind_addr BIND_ADDR

                       Local IP to bind to like "192.168.1.34". Default is 0.0.0.0

-t TTL, --ttl TTL       
                       Multicast TTL 1 - 255

-v, --version          
                       Show version

start gums (Sender) cli

a@debian:~/gums$ gums -i any.file 
stream uri: udp://@235.35.3.5:3535
a@debian:~/gums$ 

gumc (Client) cli

usage: gumc [-h] [-i INSTUFF] [-b BYTESIZE] [-v]

options:
  -h, --help            show this help message and exit
  -i INSTUFF, --instuff INSTUFF
                        default is 'udp://@235.35.3.5:3535'
  -b BYTESIZE, --bytesize BYTESIZE
                        Number of bytes to read. default is to read all.
  -v, --version         Show version

start gumc (Client) cli

a@debian:~/build/clean/gums$ gumc -i udp://@235.35.3.5:3535 -b 1024

Test gums and gumc together

  • first terminal, start the client, gumc
a@debian:~/build/clean/gums$  gumc -b 5 -i udp://@235.35.3.5:3535
  • second terminal,start the sender, gums__ and send a "hello"
a@debian:~/build/clean/gums$ printf 'hello' | gums -a 235.35.3.5:3535
stream uri: udp://@235.35.3.5:3535

read all bytes from multicast stream and write to file with gumc (Client)

gumc -i udp://@235.35.3.5:3535 -o output.ts

read 13 bytes from a multicast stream with gumc (Client)

gumc -i udp://@235.35.3.5:3535 -b 13

read 10000 bytes from a multicast stream with gumc (Client)

 gumc -i udp://@235.35.3.5:3535 -b 10000


image

Metadata

Release files for gums 0.0.33

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for gums 0.0.33
File Size Uploaded
gums-0.0.33.tar.gz 5.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for gums 0.0.33
File Interpreter ABI Platform
gums-0.0.33-py3-none-any.whl Python 3 none any Details

Total release size: 12.9 kB

Release files / gums-0.0.33.tar.gz

Download URL gums-0.0.33.tar.gz
Size 5.5 kB
Tags Source
SHA-256 checksum
How to use checksums
49209191ba6e238f7a70df0b92fb64b85c37ed842b8d23835b970d7efc90f753
BLAKE2b-256 checksum
How to use checksums
f09760f082bc092a2be3faf1b115f312f2014bb85529c5879d226aee5a444edb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.7.9

Release files / gums-0.0.33-py3-none-any.whl

Download URL gums-0.0.33-py3-none-any.whl
Size 7.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
da51a5ec1eecfeecbec80be4f7bf155c9d69c106e1b04548ba3b8c6d2515f5b4
BLAKE2b-256 checksum
How to use checksums
910448c0735f8ede7931c3627da0e9d1494247472bd2b804b8c0b683ba5abd7e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.7.9

Release history Release notifications | RSS feed

This release

0.0.33 This release

2 release files

0.0.31

2 release files

0.0.27

2 release files

0.0.25

2 release files

0.0.23

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page