Comments (6)
That bitrate=50000
makes it stall for me quite quickly. Even with just gst-launch-1.0
.
Reducing it to 5000
gst-launch-1.0 videotestsrc is-live=true pattern=snow ! x264enc tune=zerolatency bitrate=5000 ! mpegtsmux ! srtsink uri=srt://127.0.0.1:3979?mode=caller audiotestsrc wave=ticks is-live=true ! voaacenc ! aacparse ! mpegtsmux0.
And using
srtsrc poll-timeout=2000 latency=1500 uri=srt://0.0.0.0:3979?mode=listener ! decodebin name=bin ! queue ! video. bin. ! queue ! audio.
in the OBS plugin runs fine for me.
Tested on Linux:
info: obs-gstreamer build: c7729bf
Package: libsrt1.4-gnutls
Version: 1.4.2-1.3
info: OBS 27.0.0-rc4-22-ga05b6f728-modified (linux)
from obs-gstreamer.
I will try testing it on Linux as well.
from obs-gstreamer.
Using
Ubuntu 20.04.2 LTS
obs-gstreamer - c7729bf
OBS Studio - 26.1.1 (linux)
libsrt1.4.3 - 291e010
gstreamer1.19.0-git - 23f4266
the problem does not occur.
Seems to be some kind of Windows-specific leak issue when using the precompiled binaries. My workflow works well with Linux as well, so I will be using obs-gstreamer like this instead.
Documenting this just in case:
The binaries installed on windows were:
https://gstreamer.freedesktop.org/data/pkg/windows/1.18.4/mingw/gstreamer-1.0-mingw-x86_64-1.18.4.msi
https://github.com/Haivision/srt/releases/download/v1.4.3/libsrt-1.4.3-win-installer.zip
https://github.com/fzwoch/obs-gstreamer/releases/download/v0.3.1/obs-gstreamer.zip
All of them were added to PATH
- The memory increase is happening while the gst-source
srtsrc poll-timeout=2000 latency=1500 uri=srt://0.0.0.0:3979?mode=listener ! decodebin name=bin ! queue ! video. bin. ! queue ! audio.
was receiving. - OBS is neither streaming nor recording, just previewing.
- The memory increase is proportional to the bitrate of the received stream.
- If you change any properties while the source was receiving it would crash as well (and only if the listener was receiving) (see Issue #49 )
from obs-gstreamer.
Thanks for checking this out. It is too bad we cannot pinpoint the exact cause.
Do you require the standalone libsrt installer on Windows? I would think that GStreamer installer ships its own srt library. Perhaps the standalone library gets picked instead of the GStreamer's one and cause some issues?
In #49 I cannot remember to have installed anything extra. And I guess since I was investigating crashing when changing properties while it was running I assume I had a configuration quickly set up that was working.
from obs-gstreamer.
You are right! Gstreamer 1.18.4 ships with a version of libsrt from October 2020. I dug through the strings in the dll a bit and I found its version 1.4.1.
from obs-gstreamer.
Closing for now.. if this is still present or we have more insight on the issue please feel free to re-open.
from obs-gstreamer.
Related Issues (20)
- Use openh264enc if x264enc is unavailable (Flatpak gstreamer only has the former) for software encoding HOT 3
- GStreamer Source: Cannot start pipeline: no property "uri" in element "srtsrc" HOT 1
- No Element "airplaysrc" HOT 2
- How to cross-compile for Windows? HOT 1
- OBS gstreamer output HOT 9
- nixos with gstreamer not working HOT 2
- gstreamer plugin is not available in OBS ver29.1.3 HOT 2
- Gstreamer pipeline HOT 9
- Effect filter HOT 4
- Constant QP rate control option in the GStreamer Encoder doesn't work. HOT 5
- Can't output Audio to device HOT 6
- Latency High when OBS is started, Latency Low when GStreamer Effect is updated / edited HOT 7
- How to use intel igpu HOT 4
- Creeping latency issue HOT 5
- RX 6000 not working with GStreamer H265 Flatpak HOT 9
- No encoder type OBS 29 Beta HOT 5
- MSVC Support for Windows HOT 2
- Add VP8, VP9, and AV1 support HOT 3
- Compilation failed on aarch64 HOT 2
- 0.4.0 system-wide install from source is broken HOT 6
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from obs-gstreamer.