Feliks
Feliks
SMSoftware Mansion
Created by ℓé on 1/21/2025 in #membrane-help
Get Video from RTSP and stream by RTMP
Could you provide some code and error messages? It is hard to solve your problem without that. Or maybe you don't know how to approach the problem and what operations have to be done in the pipeline you need?
4 replies
SMSoftware Mansion
Created by Sameer on 1/5/2025 in #membrane-help
How to send control events upstream/downstream ?
@Sameer there is no need to create a new link from :filter_3 to :filter_1. All you have to do is to return action [event: {:input, %My.Event{}}] in :filter_3 so it will be sent to the :filter_2. IDK what is the implementation of :filter_2, but if it doesn't do anything with events explicitly, %My.Event{} by default will be forwarded to :filter_1. Then, you will be able to handle it there in handle_event(:output, %My.Event{}, ctx, state) callback
7 replies
SMSoftware Mansion
Created by TonyLikeSocks on 10/3/2024 in #membrane-help
Pipeline Error: Pipeline Failed to Terminate within Timeout (5000ms)
It seems reasonable, that your element enters Ortex.run and it stays there for long enough, that default timeout in Pipeline.terminate is exceeded
13 replies
SMSoftware Mansion
Created by TonyLikeSocks on 10/3/2024 in #membrane-help
Pipeline Error: Pipeline Failed to Terminate within Timeout (5000ms)
handle_terminate_request is executed while the element process is still alive and an element might live for a while after this callback ends.
Ahh. Interesting, I did your method and got an entirely different result.
It means that probably the new element is responsible for the pipeline termination delay. It is hard for me to say something more without the code of the whole element
13 replies
SMSoftware Mansion
Created by TonyLikeSocks on 10/3/2024 in #membrane-help
Pipeline Error: Pipeline Failed to Terminate within Timeout (5000ms)
You can just spawn a new Task in handle_init in your custom element. This task should Process.monitor the element and dbg(some message) after the element dies. Something like this should tell us if termination of this element is the problem or not
13 replies
SMSoftware Mansion
Created by TonyLikeSocks on 10/3/2024 in #membrane-help
Pipeline Error: Pipeline Failed to Terminate within Timeout (5000ms)
Termination of the whole pipline is postopned to the moment when all bins and elements are terminated, so if your custom VAD element doesn't terminate when it should, it can delay termination of the whole pipeline
13 replies
SMSoftware Mansion
Created by samrat on 7/12/2024 in #membrane-help
Pipeline stuck at MP4 Demuxer
Yes. I guess ISOM demuxer won't be able to demux fMP4 and we don't have any other MP4 demuxer for now
5 replies
SMSoftware Mansion
Created by samrat on 7/12/2024 in #membrane-help
Pipeline stuck at MP4 Demuxer
@samrat does it meet your needs?
5 replies
SMSoftware Mansion
Created by samrat on 7/12/2024 in #membrane-help
Pipeline stuck at MP4 Demuxer
5 replies
SMSoftware Mansion
Created by odingrail on 7/23/2024 in #membrane-help
membrane_webrtc_plugin: %Membrane.Buffer with pts: nil, dts: nil received from audio track.
Change
|> child(:parser, %Membrane.Opus.Parser{delimitation: :keep})
|> child(:parser, %Membrane.Opus.Parser{delimitation: :keep})
on
|> child(:parser, %Membrane.Opus.Parser{delimitation: :keep, generate_best_effort_timestamps?: true})
|> child(:parser, %Membrane.Opus.Parser{delimitation: :keep, generate_best_effort_timestamps?: true})
It should solve your problem
6 replies
SMSoftware Mansion
Created by TonyLikeSocks on 6/12/2024 in #membrane-help
Issue Membrane Upgrade to 1.1 (from 0.12.9)
Change ... |> via_in(:input) |> get_child(:mixer) in spec on ... |> via_in(Pad.ref(:input, track_id)) |> get_child(:mixer) or eventually ... |> via_in(Pad.ref(:input, inspect(track_id))) |> get_child(:mixer)
16 replies
SMSoftware Mansion
Created by TonyLikeSocks on 6/12/2024 in #membrane-help
Issue Membrane Upgrade to 1.1 (from 0.12.9)
Change |> child(:audio_parser, %Membrane.RawAudioParser{overwrite_pts?: true}) on |> child({:audio_parser, track_id}, %Membrane.RawAudioParser{overwrite_pts?: true})
16 replies
SMSoftware Mansion
Created by TonyLikeSocks on 6/12/2024 in #membrane-help
Issue Membrane Upgrade to 1.1 (from 0.12.9)
Let me know if it changed anything
16 replies
SMSoftware Mansion
Created by TonyLikeSocks on 6/12/2024 in #membrane-help
Issue Membrane Upgrade to 1.1 (from 0.12.9)
And add {:membrane_raw_audio_parser_plugin, "~> 0.4.0"} to deps
16 replies
SMSoftware Mansion
Created by TonyLikeSocks on 6/12/2024 in #membrane-help
Issue Membrane Upgrade to 1.1 (from 0.12.9)
put |> child(:audio_parser, %Membrane.RawAudioParser{overwrite_pts?: true}) between opus decoder and audio mixer
16 replies
SMSoftware Mansion
Created by TonyLikeSocks on 6/12/2024 in #membrane-help
Issue Membrane Upgrade to 1.1 (from 0.12.9)
Parser added before mixer may solve your problem, as it will set timestamps in the stream
16 replies
SMSoftware Mansion
Created by TonyLikeSocks on 6/12/2024 in #membrane-help
Issue Membrane Upgrade to 1.1 (from 0.12.9)
19:50:34.069 [error] <0.4709.0>/{:endpoint, "recorder"}/:mixer Error occured in Membrane Element: <- does this log come from your custom endpoint? Maybe you lack some parser before mixer 🤔
16 replies
SMSoftware Mansion
Created by TonyLikeSocks on 6/12/2024 in #membrane-help
Issue Membrane Upgrade to 1.1 (from 0.12.9)
What version of :membrane_audio_mix_plugin and :membrane_rtp_plugin do you use?
16 replies
SMSoftware Mansion
Created by Feliks on 4/2/2024 in #membrane-help
Writing a `Bin` queuing content from multiple remote files
@Aske @skillet We have just released version 0.18.8 of membrane_aac_fdk_plugin fixing the bug that you have met, so you should be able to update this pluing to the newest version and use it without such an error. Let me know, if the new version will cause any other problem
62 replies
SMSoftware Mansion
Created by Feliks on 4/2/2024 in #membrane-help
Writing a `Bin` queuing content from multiple remote files
@Aske @skillet does downgrading membrane_aac_fdk_plugin to 0.18.2 or lower solve your problem and allow you to go further?
62 replies