echo "Enter m3u8 link:";read link;echo "Enter output filename:";read filename;ffmpeg -i "$link" -bsf:a aac_adtstoasc -vcodec copy -c copy -crf 50 $filename.mp4
| #!/usr/bin/env python3 | |
| import os # noqa: I001 | |
| import signal | |
| import sys | |
| import subprocess | |
| import gi | |
| gi.require_version("GLib", "2.0") |
| from aioredis import Channel, Redis | |
| from fastapi import FastAPI | |
| from fastapi.params import Depends | |
| from fastapi_plugins import depends_redis, redis_plugin | |
| from sse_starlette.sse import EventSourceResponse | |
| from starlette.responses import HTMLResponse | |
| html = """ | |
| <!DOCTYPE html> | |
| <html> |
| import requests | |
| import json | |
| if __name__ == '__main__': | |
| params = {'key': 'value'} | |
| requests.post('http://...:8080', json.dumps(params)) |
These are example files from the tutorial by @boneskull as seen on Get on The Good Foot with MicroPython on the ESP32, Part 2
| $gh = 'localhost:19398' # Viz GH REST endpoint | |
| $user = 'R3Vlc3Q6' # Viz GH user (Guest) | |
| $maps = Invoke-RestMethod -Uri "http://${gh}/search?searchTerms=SHARED_MEMORY_MAP" -Headers @{'Authorization' = "Basic ${user}"} | |
| $maps | Select-XML -XPath '//atom:title/text()' -Namespace @{'atom' = 'http://www.w3.org/2005/Atom'} | ForEach-Object { | |
| Write-Host $_ | |
| } |
| $engine = 'localhost:61000' # Viz Engine REST endpoint | |
| $gh = 'localhost:19398' # Viz GH REST endpoint | |
| $user = 'R3Vlc3Q6' # Viz GH user (Guest) | |
| $vizrt_namespaces = @{'types' = 'http://www.vizrt.com/types'} | |
| $gh_request_headers = @{'Authorization' = "Basic ${user}"} | |
| $engine_request_headers = @{'Content-Type' = 'application/json'; 'Accept' = 'application/json'} | |
| $scenes = Invoke-RestMethod -Uri "http://${engine}/api/v1/renderer/layer" -Headers $engine_request_headers | |
| $scenes | Select-Object -ExpandProperty Scene | Where-Object {$_ -NotMatch '00000000-0000-0000-0000-000000000000'} | ForEach-Object { |
Feedback welcomed - if this becomes old or contains misleading information please let me know.
OBS provides some instructions on how to get SRT, but I found that they didn't quite work for me on a fresh minimal install of Ubuntu 20 (Focal). OBS on linux doesn't appear to come with SRT support out of the box.
The OBS Discord community was really helpful, but in the end it took a lot of futzing and following are my notes, in case this is helpful to anyone else.
By the way, if you are considering SRT with OBS, it was extremely painful to install correctly, but then it worked beautifully. The error correction SRT provides was very nice when my wireless signal was poor.
| #!/usr/bin/env python3 | |
| # -*- coding:utf-8 -*- | |
| # GStreamer SDK Tutorials in Python | |
| # | |
| # basic-tutorial-2 | |
| # | |
| """ | |
| basic-tutorial-2: GStreamer concepts | |
| http://docs.gstreamer.com/display/GstSDK/Basic+tutorial+2%3A+GStreamer+concepts | |
| """ |
| from kivy.app import App | |
| from kivy.uix.widget import Widget | |
| from kivy.uix.boxlayout import BoxLayout | |
| from kivy.uix.image import Image | |
| from kivy.clock import Clock | |
| from kivy.graphics.texture import Texture | |
| import cv2 | |
| import numpy as np |
