Coder Social home page Coder Social logo

toolbox's People

Contributors

angusf22 avatar birme avatar cesarandreslopez avatar zapfire88 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

toolbox's Issues

How to start a simple VOD from a file in a loop so that it is always available?

I tried this one:docker run --rm -p 9998:9998/udp -v $PWD:/mnt eyevinntechnology/toolbox-loopts twitch60.mp4 "srt://0.0.0.0:9998?pkt_size=1316&mode=listener"

It works, but it has several problems:

  1. I can't play the stream here srt://localhost:9998 from several devices at the same time
  2. As soon as I turn off the playback, the container dies, but I want it to wait for the connection again
  3. I have problems playing a video. It has no sound and has a lot of lost frames

CleanShot-2024-05-10-1โ€ฏ-26-23

origin file
https://github.com/Eyevinn/toolbox/assets/18316591/4e8f2721-3230-4903-abdd-c4704f8ba45e

SRT TO RMTP

Hey i tried you srt to RMTP ccontainer. It works but still prints :
12:57:30.540310/ffmpeg*E:SRT.d: epoll/update: IPE: update struck EID 1 which is NOT SUBSCRIBED to @105050122
is that normal ?

standard_init_linux.go:211: exec user process caused "exec format error"

Hey.
Im attempting to use a compiled ffmpeg & SRT with Eyevinn Toolbox.

Upon trying any docker commands i get the following error: standard_init_linux.go:211: exec user process caused "exec format error"

With for example: docker run --rm -p 1234:1234/udp eyevinntechnology/toolbox-srtrx (my IP):9998 239.0.0.1:1234

Im using Lubuntu 19.10

Thanks for any assistance.

Output video playback speed too high

I'm noticing that when I stream video the output is somewhat accelerated compared to the original.

Are there settings that can control this or is this just an artifact of ffmpeg conversion?

Output from execution:

BeetleJuice:Sample Video cwainwright$ docker run --rm -p 9998:9998/udp -v "$PWD":/mnt eyevinntechnology/toolbox-loopts IN.mp4 udp://host.docker.internal:9998?pkt_size=1316 --withtc --framerate 30
ffmpeg version N-93394-g14eea7c Copyright (c) 2000-2019 the FFmpeg developers
built with gcc 7 (Ubuntu 7.3.0-27ubuntu118.04)
configuration: --pkg-config-flags=--static --enable-gpl --enable-libfdk-aac --enable-libx264 --enable-libaom --enable-libdav1d --enable-libvpx --enable-libsrt --enable-libx265 --enable-libfreetype --enable-version3 --enable-nonfree
libavutil 56. 26.100 / 56. 26.100
libavcodec 58. 47.103 / 58. 47.103
libavformat 58. 26.101 / 58. 26.101
libavdevice 58. 6.101 / 58. 6.101
libavfilter 7. 48.100 / 7. 48.100
libswscale 5. 4.100 / 5. 4.100
libswresample 3. 4.100 / 3. 4.100
libpostproc 55. 4.100 / 55. 4.100
ffmpeg version N-93394-g14eea7c Copyright (c) 2000-2019 the FFmpeg developers
built with gcc 7 (Ubuntu 7.3.0-27ubuntu1
18.04)
configuration: --pkg-config-flags=--static --enable-gpl --enable-libfdk-aac --enable-libx264 --enable-libaom --enable-libdav1d --enable-libvpx --enable-libsrt --enable-libx265 --enable-libfreetype --enable-version3 --enable-nonfree
libavutil 56. 26.100 / 56. 26.100
libavcodec 58. 47.103 / 58. 47.103
libavformat 58. 26.101 / 58. 26.101
libavdevice 58. 6.101 / 58. 6.101
libavfilter 7. 48.100 / 7. 48.100
libswscale 5. 4.100 / 5. 4.100
libswresample 3. 4.100 / 3. 4.100
libpostproc 55. 4.100 / 55. 4.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/mnt/IN.mp4':
Metadata:
major_brand : mp42
minor_version : 512
compatible_brands: isomiso2avc1mp41
creation_time : 2019-09-27T21:54:50.000000Z
title : Media Presentation
encoder : HandBrake 1.2.2 2019022300
Duration: 00:10:00.00, start: 0.000000, bitrate: 23548 kb/s
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 3840x2160 [SAR 1:1 DAR 16:9], 23547 kb/s, 15 fps, 15 tbr, 90k tbn, 180k tbc (default)
Metadata:
creation_time : 2019-09-27T21:54:50.000000Z
handler_name : VideoHandler
Output #0, h264, to 'pipe:':
Metadata:
major_brand : mp42
minor_version : 512
compatible_brands: isomiso2avc1mp41
title : Media Presentation
encoder : Lavf58.26.101
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 3840x2160 [SAR 1:1 DAR 16:9], q=2-31, 23547 kb/s, 15 fps, 15 tbr, 90k tbn, 90k tbc (default)
Metadata:
creation_time : 2019-09-27T21:54:50.000000Z
handler_name : VideoHandler
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Press [q] to stop, [?] for help
[h264 @ 0x5614976989c0] Stream #0: not enough frames to estimate rate; consider increasing probesize
Input #0, h264, from 'pipe:':
Duration: N/A, bitrate: N/A
Stream #0:0: Video: h264 (High), yuv420p(tv, bt709, progressive), 3840x2160 [SAR 1:1 DAR 16:9], 90k tbr, 1200k tbn, 180k tbc
Input #1, lavfi, from 'anullsrc=r=48000:cl=stereo':
Duration: N/A, start: 0.000000, bitrate: 768 kb/s
Stream #1:0: Audio: pcm_u8, 48000 Hz, stereo, u8, 768 kb/s
Stream mapping:
Stream #0:0 (h264) -> drawtext (graph 0)
scale (graph 0) -> Stream #0:0 (libx264)
Stream #1:0 -> #0:1 (pcm_u8 (native) -> aac (native))
[libx264 @ 0x5614976c0fc0] using SAR=1/1
[libx264 @ 0x5614976c0fc0] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 0x5614976c0fc0] profile High, level 3.1
Output #0, mpegts, to 'udp://host.docker.internal:9998?pkt_size=1316':
Metadata:
encoder : Lavf58.26.101
Stream #0:0: Video: h264 (libx264), yuv420p(progressive), 1280x720 [SAR 1:1 DAR 16:9], q=-1--1, 30 fps, 90k tbn, 30 tbc
Metadata:
encoder : Lavc58.47.103 libx264
Side data:
cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
Stream #0:1: Audio: aac (LC), 48000 Hz, stereo, fltp, 128 kb/s
Metadata:
encoder : Lavc58.47.103 aac
[h264 @ 0x5614976989c0] Thread message queue blocking; consider raising the thread_queue_size option (current value: 512)

Docker for steaming browser source

Do you have a docker container that streams a web browser source using Firefox or chrome and ffmpeg to an rtmp destination?
Thank you!

Instructions / Tutorial videos

Hello,

Is there instructions or a video on how to install and use these tools.
i understand that they need docker installed.

Questions.

  1. Which operating systems can these work on?
  2. Can it work on a raspberry pi / Jetson Nano
  3. Do i fist install docker, next clone the URL - https://github.com/Eyevinn/toolbox.git
  4. once i have done that do i simple run the docker command such as (docker run --rm -p 1234:1234/udp eyevinntechnology/toolbox-srt2rtmp:0.1.1 0.0.0.0:1234 )
    thanks

RTMP 2 SRT Container Seems to Be Broken

Hello,

I get following error: CANCELED [1/2] FROM docker.io/eyevinntechnology/ffmpeg-base:0.3.0

Your container seems to be not available anymore.

Thank you.

% docker build -t rtmp2srt .                           
[+] Building 13.9s (6/6) FINISHED                                                              docker:desktop-linux
 => [internal] load build definition from Dockerfile                                                           0.0s
 => => transferring dockerfile: 396B                                                                           0.0s
 => [internal] load metadata for docker.io/eyevinntechnology/ffmpeg-base:0.3.0                                13.7s
 => [internal] load .dockerignore                                                                              0.0s
 => => transferring context: 2B                                                                                0.0s
 => [internal] load build context                                                                              0.0s
 => => transferring context: 2B                                                                                0.0s
 **=> CANCELED [1/2] FROM docker.io/eyevinntechnology/ffmpeg-base:0.3.0@sha256:204eaff13cfa5e4359c80e6bc9a02469  0.0s**
 => => resolve docker.io/eyevinntechnology/ffmpeg-base:0.3.0@sha256:204eaff13cfa5e4359c80e6bc9a02469ad0266b6b  0.0s
 => => sha256:204eaff13cfa5e4359c80e6bc9a02469ad0266b6b8f865c799122c0d8a430b96 7.90kB / 7.90kB                 0.0s
 => => sha256:5b9ba76110d027edb69d49a5bad8c4c58a32096bba47a190843ad635238b5f47 13.93kB / 13.93kB               0.0s
 => ERROR [2/2] COPY python/rtmp2srt.py /root/rtmp2srt.py                                                      0.0s
------
 > [2/2] COPY python/rtmp2srt.py /root/rtmp2srt.py:
------
Dockerfile:3
--------------------
   1 |     FROM eyevinntechnology/ffmpeg-base:0.3.0
   2 |     MAINTAINER Eyevinn Technology <[email protected]>
   3 | >>> COPY python/rtmp2srt.py /root/rtmp2srt.py
   4 |     ENTRYPOINT ["/root/rtmp2srt.py"]
   5 |     CMD []
--------------------
ERROR: failed to solve: failed to compute cache key: failed to calculate checksum of ref 48d47620-86a2-4910-b582-6eecc35a53ad::emztjelvz1h9kd6q70ztxaqfc: failed to walk /var/lib/docker/tmp/buildkit-mount3145604280/python: lstat /var/lib/docker/tmp/buildkit-mount3145604280/python: no such file or directory

Do you have recommendations on lowest possible latency

First of all, great project, thanks for releasing it!

I am wondering if you guys have any particular recommendations on how to SRT relay over the internet with lowest possible latency in a setup like the following:

Generating Camera is in RTSP, an SRT grabber would get it and send it to another computer via open Internet SRT receiver.

Then the receiver would make the stream available to VLC.

Any tips would be much appreciated!

Minimal streaming example

I was reading your article and pardon me if I'm not too familiar with the terminology, but I have hard times understanding how to create a minimal streaming example with SRT?

My current setup that I want to switch to SRT is described as follows:
Sender:
ffmpeg -f avfoundation -i "1:0" -an -r 30 -vf scale=1280:720 -vcodec libx264 -crf 12 -preset ultrafast -tune zerolatency -threads 8 -thread_type slice -f mpegts udp://192.168.1.5:1234

Receiver:
The receiver was using a Player like VLC or MX Player by opening udp://@192.168.1.5:1234.

How would I come up with a similar situation with SRT

Appreciate your help.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.