Skip to content

Instantly share code, notes, and snippets.

@sax
Last active October 18, 2021 22:11
Show Gist options
  • Save sax/9337f75fe9a17eaebb3496c26830cd21 to your computer and use it in GitHub Desktop.
Save sax/9337f75fe9a17eaebb3496c26830cd21 to your computer and use it in GitHub Desktop.
eprof membrane core analysis
Process: #PID<0.3196.0>, Struct: Elixir.Membrane.Core.Pipeline.State, Module: Elixir.Membrane.RTC.Engine
Process: #PID<0.3197.0>, Clock
Process: #PID<0.3199.0>, Clock
Process: #PID<0.3201.0>, Clock
Process: #PID<0.3208.0>, Clock
Process: #PID<0.3234.0>, Clock
Process: #PID<0.3243.0>, Clock
Process: #PID<0.3776.0>, Clock
Process: #PID<0.3778.0>, Clock
Process: #PID<0.3785.0>, Clock
Process: #PID<0.3801.0>, Clock
Process: #PID<0.3811.0>, Clock
Process: #PID<0.4168.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.WebRTC.EndpointBin
Process: #PID<0.4169.0>, Clock
Process: #PID<0.4170.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.ICE.Bin
Process: #PID<0.4171.0>, Clock
Process: #PID<0.4172.0>, Struct: Elixir.Membrane.ICE.Connector.State, Module:
Process: #PID<0.4173.0>, CNode:
Process: #PID<0.4174.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.ICE.Source
Process: #PID<0.4175.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.ICE.Sink
Process: #PID<0.4176.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.Funnel
Process: #PID<0.4177.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.SessionBin
Process: #PID<0.4178.0>, Clock
Process: #PID<0.4179.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.SSRCRouter
Process: #PID<0.4180.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Parser
Process: #PID<0.4181.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4182.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTCP.Parser
Process: #PID<0.4183.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTCP.Decryptor
Process: #PID<0.4184.0>, CNode: bundlex_cnode_0_d01ffd43-2600-4046-8903-5de05db2b622@10-138-15-217.default.pod.cluster.local, Struct: Elixir.ExDTLS.State
Process: #PID<0.4185.0>, CNode: bundlex_cnode_0_d01ffd43-2600-4046-8903-5de05db2b622@10-138-15-217.default.pod.cluster.local
Process: #PID<0.4188.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.WebRTC.EndpointBin
Process: #PID<0.4189.0>, Clock
Process: #PID<0.4190.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.ICE.Bin
Process: #PID<0.4191.0>, Clock
Process: #PID<0.4192.0>, Struct: Elixir.Membrane.ICE.Connector.State, Module:
Process: #PID<0.4193.0>, CNode:
Process: #PID<0.4194.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.ICE.Source
Process: #PID<0.4195.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.ICE.Sink
Process: #PID<0.4196.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.Funnel
Process: #PID<0.4197.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.SessionBin
Process: #PID<0.4198.0>, Clock
Process: #PID<0.4199.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.SSRCRouter
Process: #PID<0.4200.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Parser
Process: #PID<0.4201.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4202.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTCP.Parser
Process: #PID<0.4203.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTCP.Decryptor
Process: #PID<0.4204.0>, CNode: bundlex_cnode_2_d01ffd43-2600-4046-8903-5de05db2b622@10-138-15-217.default.pod.cluster.local, Struct: Elixir.ExDTLS.State
Process: #PID<0.4205.0>, CNode: bundlex_cnode_2_d01ffd43-2600-4046-8903-5de05db2b622@10-138-15-217.default.pod.cluster.local
Process: #PID<0.4208.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4209.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4210.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamSendBin
Process: #PID<0.4211.0>, Clock
Process: #PID<0.4212.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Opus.Payloader
Process: #PID<0.4213.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Serializer
Process: #PID<0.4214.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4215.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4216.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamSendBin
Process: #PID<0.4217.0>, Clock
Process: #PID<0.4218.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.VP8.Payloader
Process: #PID<0.4219.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Serializer
Process: #PID<0.4220.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.Element.Fake.Sink.Buffers
Process: #PID<0.4221.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.Element.Tee.Master
Process: #PID<0.4222.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4223.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamReceiveBin
Process: #PID<0.4224.0>, Clock
Process: #PID<0.4225.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.VP8.Depayloader
Process: #PID<0.4226.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.JitterBuffer
Process: #PID<0.4227.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTCP.Receiver
Process: #PID<0.4228.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Decryptor
Process: #PID<0.4229.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.Element.Fake.Sink.Buffers
Process: #PID<0.4230.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.Element.Tee.Master
Process: #PID<0.4231.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4232.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamReceiveBin
Process: #PID<0.4233.0>, Clock
Process: #PID<0.4234.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Opus.Depayloader
Process: #PID<0.4235.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.JitterBuffer
Process: #PID<0.4236.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTCP.Receiver
Process: #PID<0.4237.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Decryptor
Process: #PID<0.4238.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.VAD
Process: #PID<0.4246.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.Element.Fake.Sink.Buffers
Process: #PID<0.4247.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.Element.Tee.Master
Process: #PID<0.4248.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4249.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamReceiveBin
Process: #PID<0.4250.0>, Clock
Process: #PID<0.4251.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.VP8.Depayloader
Process: #PID<0.4252.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.JitterBuffer
Process: #PID<0.4253.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTCP.Receiver
Process: #PID<0.4254.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Decryptor
Process: #PID<0.4255.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4256.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4257.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamSendBin
Process: #PID<0.4258.0>, Clock
Process: #PID<0.4259.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.VP8.Payloader
Process: #PID<0.4260.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Serializer
Process: #PID<0.4261.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.Element.Fake.Sink.Buffers
Process: #PID<0.4262.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.Element.Tee.Master
Process: #PID<0.4263.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4264.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamReceiveBin
Process: #PID<0.4265.0>, Clock
Process: #PID<0.4266.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Opus.Depayloader
Process: #PID<0.4267.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.JitterBuffer
Process: #PID<0.4268.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTCP.Receiver
Process: #PID<0.4269.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Decryptor
Process: #PID<0.4270.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.VAD
Process: #PID<0.4271.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4272.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4273.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamSendBin
Process: #PID<0.4274.0>, Clock
Process: #PID<0.4275.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Opus.Payloader
Process: #PID<0.4276.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Serializer
Process: #PID<0.4280.0>, Clock
Process: #PID<0.4286.0>, Clock
Process: #PID<0.4289.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4290.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4291.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamSendBin
Process: #PID<0.4292.0>, Clock
Process: #PID<0.4293.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.VP8.Payloader
Process: #PID<0.4294.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Serializer
Process: #PID<0.4295.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4296.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4297.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamSendBin
Process: #PID<0.4298.0>, Clock
Process: #PID<0.4299.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Opus.Payloader
Process: #PID<0.4300.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Serializer
Process: #PID<0.4301.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4302.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4303.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamSendBin
Process: #PID<0.4304.0>, Clock
Process: #PID<0.4305.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Opus.Payloader
Process: #PID<0.4306.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Serializer
Process: #PID<0.4307.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4308.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4309.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamSendBin
Process: #PID<0.4310.0>, Clock
Process: #PID<0.4311.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.VP8.Payloader
Process: #PID<0.4312.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Serializer
Process: #PID<0.4322.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.WebRTC.EndpointBin
Process: #PID<0.4323.0>, Clock
Process: #PID<0.4324.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.ICE.Bin
Process: #PID<0.4325.0>, Clock
Process: #PID<0.4326.0>, Struct: Elixir.Membrane.ICE.Connector.State, Module:
Process: #PID<0.4327.0>, CNode:
Process: #PID<0.4328.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.ICE.Source
Process: #PID<0.4329.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.ICE.Sink
Process: #PID<0.4330.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.Funnel
Process: #PID<0.4331.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.SessionBin
Process: #PID<0.4332.0>, Clock
Process: #PID<0.4333.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.SSRCRouter
Process: #PID<0.4334.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Parser
Process: #PID<0.4335.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4336.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTCP.Parser
Process: #PID<0.4337.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTCP.Decryptor
Process: #PID<0.4338.0>, CNode: bundlex_cnode_3_d01ffd43-2600-4046-8903-5de05db2b622@10-138-15-217.default.pod.cluster.local, Struct: Elixir.ExDTLS.State
Process: #PID<0.4339.0>, CNode: bundlex_cnode_3_d01ffd43-2600-4046-8903-5de05db2b622@10-138-15-217.default.pod.cluster.local
Process: #PID<0.4347.0>, Clock
Process: #PID<0.4353.0>, Clock
Process: #PID<0.4358.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.Element.Fake.Sink.Buffers
Process: #PID<0.4359.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.Element.Tee.Master
Process: #PID<0.4360.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4361.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamReceiveBin
Process: #PID<0.4362.0>, Clock
Process: #PID<0.4363.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.VP8.Depayloader
Process: #PID<0.4364.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.JitterBuffer
Process: #PID<0.4365.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTCP.Receiver
Process: #PID<0.4366.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Decryptor
Process: #PID<0.4367.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4368.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4369.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamSendBin
Process: #PID<0.4370.0>, Clock
Process: #PID<0.4371.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.VP8.Payloader
Process: #PID<0.4372.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Serializer
Process: #PID<0.4373.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.Element.Fake.Sink.Buffers
Process: #PID<0.4374.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.Element.Tee.Master
Process: #PID<0.4375.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4376.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamReceiveBin
Process: #PID<0.4377.0>, Clock
Process: #PID<0.4378.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Opus.Depayloader
Process: #PID<0.4379.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.JitterBuffer
Process: #PID<0.4380.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTCP.Receiver
Process: #PID<0.4381.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Decryptor
Process: #PID<0.4382.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.VAD
Process: #PID<0.4383.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4384.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4385.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamSendBin
Process: #PID<0.4386.0>, Clock
Process: #PID<0.4387.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Opus.Payloader
Process: #PID<0.4388.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Serializer
Process: #PID<0.4389.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4390.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4391.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamSendBin
Process: #PID<0.4392.0>, Clock
Process: #PID<0.4393.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.VP8.Payloader
Process: #PID<0.4394.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Serializer
Process: #PID<0.4395.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4396.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4397.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamSendBin
Process: #PID<0.4398.0>, Clock
Process: #PID<0.4399.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Opus.Payloader
Process: #PID<0.4400.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Serializer
Process: #PID<0.4401.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4402.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4403.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamSendBin
Process: #PID<0.4404.0>, Clock
Process: #PID<0.4405.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Opus.Payloader
Process: #PID<0.4406.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Serializer
Process: #PID<0.4407.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4408.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4409.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamSendBin
Process: #PID<0.4410.0>, Clock
Process: #PID<0.4411.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.VP8.Payloader
Process: #PID<0.4412.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Serializer
Process: #PID<0.4413.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4414.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4415.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamSendBin
Process: #PID<0.4416.0>, Clock
Process: #PID<0.4417.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.VP8.Payloader
Process: #PID<0.4418.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Serializer
Process: #PID<0.4419.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4420.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4421.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamSendBin
Process: #PID<0.4422.0>, Clock
Process: #PID<0.4423.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Opus.Payloader
Process: #PID<0.4424.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Serializer
Process: #PID<0.4425.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4426.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4427.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamSendBin
Process: #PID<0.4428.0>, Clock
Process: #PID<0.4429.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Opus.Payloader
Process: #PID<0.4430.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Serializer
Process: #PID<0.4431.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4432.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4433.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamSendBin
Process: #PID<0.4434.0>, Clock
Process: #PID<0.4435.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.VP8.Payloader
Process: #PID<0.4436.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Serializer
Process: #PID<0.4440.0>, Clock
Process: #PID<0.4446.0>, Clock
Process: #PID<0.4474.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.WebRTC.EndpointBin
Process: #PID<0.4475.0>, Clock
Process: #PID<0.4476.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.ICE.Bin
Process: #PID<0.4477.0>, Clock
Process: #PID<0.4478.0>, Struct: Elixir.Membrane.ICE.Connector.State, Module:
Process: #PID<0.4479.0>, CNode:
Process: #PID<0.4480.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.ICE.Source
Process: #PID<0.4481.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.ICE.Sink
Process: #PID<0.4482.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.Funnel
Process: #PID<0.4483.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.SessionBin
Process: #PID<0.4484.0>, Clock
Process: #PID<0.4485.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.SSRCRouter
Process: #PID<0.4486.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Parser
Process: #PID<0.4487.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4488.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTCP.Parser
Process: #PID<0.4489.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTCP.Decryptor
Process: #PID<0.4490.0>, CNode: bundlex_cnode_1_d01ffd43-2600-4046-8903-5de05db2b622@10-138-15-217.default.pod.cluster.local, Struct: Elixir.ExDTLS.State
Process: #PID<0.4491.0>, CNode: bundlex_cnode_1_d01ffd43-2600-4046-8903-5de05db2b622@10-138-15-217.default.pod.cluster.local
Process: #PID<0.4494.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.Element.Fake.Sink.Buffers
Process: #PID<0.4495.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.Element.Tee.Master
Process: #PID<0.4496.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4497.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamReceiveBin
Process: #PID<0.4498.0>, Clock
Process: #PID<0.4499.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.VP8.Depayloader
Process: #PID<0.4500.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.JitterBuffer
Process: #PID<0.4501.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTCP.Receiver
Process: #PID<0.4502.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Decryptor
Process: #PID<0.4503.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4504.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4505.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamSendBin
Process: #PID<0.4506.0>, Clock
Process: #PID<0.4507.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.VP8.Payloader
Process: #PID<0.4508.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Serializer
Process: #PID<0.4509.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4510.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4511.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamSendBin
Process: #PID<0.4512.0>, Clock
Process: #PID<0.4513.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.VP8.Payloader
Process: #PID<0.4514.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Serializer
Process: #PID<0.4515.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.Element.Fake.Sink.Buffers
Process: #PID<0.4516.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.Element.Tee.Master
Process: #PID<0.4517.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4518.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamReceiveBin
Process: #PID<0.4519.0>, Clock
Process: #PID<0.4520.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Opus.Depayloader
Process: #PID<0.4521.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.JitterBuffer
Process: #PID<0.4522.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTCP.Receiver
Process: #PID<0.4523.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Decryptor
Process: #PID<0.4524.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.VAD
Process: #PID<0.4525.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4526.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4527.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamSendBin
Process: #PID<0.4528.0>, Clock
Process: #PID<0.4529.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Opus.Payloader
Process: #PID<0.4530.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Serializer
Process: #PID<0.4531.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4532.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4533.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamSendBin
Process: #PID<0.4534.0>, Clock
Process: #PID<0.4535.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Opus.Payloader
Process: #PID<0.4536.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Serializer
Process: #PID<0.4537.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4538.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4539.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamSendBin
Process: #PID<0.4540.0>, Clock
Process: #PID<0.4541.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.VP8.Payloader
Process: #PID<0.4542.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Serializer
Process: #PID<0.4543.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4544.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4545.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamSendBin
Process: #PID<0.4546.0>, Clock
Process: #PID<0.4547.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Opus.Payloader
Process: #PID<0.4548.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Serializer
Process: #PID<0.4549.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4550.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4551.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamSendBin
Process: #PID<0.4552.0>, Clock
Process: #PID<0.4553.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Opus.Payloader
Process: #PID<0.4554.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Serializer
Process: #PID<0.4555.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4556.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4557.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamSendBin
Process: #PID<0.4558.0>, Clock
Process: #PID<0.4559.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.VP8.Payloader
Process: #PID<0.4560.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Serializer
Process: #PID<0.4561.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4562.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4563.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamSendBin
Process: #PID<0.4564.0>, Clock
Process: #PID<0.4565.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.VP8.Payloader
Process: #PID<0.4566.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Serializer
Process: #PID<0.4567.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4568.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4569.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamSendBin
Process: #PID<0.4570.0>, Clock
Process: #PID<0.4571.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Opus.Payloader
Process: #PID<0.4572.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Serializer
Process: #PID<0.4573.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4574.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4575.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamSendBin
Process: #PID<0.4576.0>, Clock
Process: #PID<0.4577.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Opus.Payloader
Process: #PID<0.4578.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Serializer
Process: #PID<0.4579.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.WebRTC.TrackFilter
Process: #PID<0.4580.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.SRTP.Encryptor
Process: #PID<0.4581.0>, Struct: Elixir.Membrane.Core.Bin.State, Module: Elixir.Membrane.RTP.StreamSendBin
Process: #PID<0.4582.0>, Clock
Process: #PID<0.4583.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.VP8.Payloader
Process: #PID<0.4584.0>, Struct: Elixir.Membrane.Core.Element.State, Module: Elixir.Membrane.RTP.Serializer
This file has been truncated, but you can view the full file.
****** Process <9928.4168.0> -- 0.25 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
gen_server:handle_common_reply/8 2953 1.01 811 [ 0.27]
'Elixir.Membrane.Helper.GenServer':noreply/1 2953 1.01 812 [ 0.27]
gen_server:try_dispatch/3 2953 1.03 826 [ 0.28]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 2953 1.10 884 [ 0.30]
lists:keymember/3 2953 1.18 947 [ 0.32]
lists:member/2 2953 1.19 953 [ 0.32]
'Elixir.Membrane.Pad':get_corresponding_bin_name/1 2953 1.19 953 [ 0.32]
erlang:setelement/3 2953 1.28 1026 [ 0.35]
gen_server:decode_msg/9 2953 1.37 1098 [ 0.37]
'Elixir.Bunch':listify/1 5906 1.62 1305 [ 0.22]
'Elixir.Membrane.Core.Bin.LinkingBuffer':'currently_linking?'/2 2953 1.71 1374 [ 0.47]
'Elixir.Keyword':delete_key/2 5906 1.80 1449 [ 0.25]
'Elixir.Membrane.Core.Bin.State':fetch/2 2953 1.83 1469 [ 0.50]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 2953 1.83 1472 [ 0.50]
'Elixir.Bunch.Access':get_in/2 2953 1.87 1503 [ 0.51]
gen_server:handle_msg/6 2953 1.99 1601 [ 0.54]
'Elixir.Enum':'member?'/2 2953 2.04 1642 [ 0.56]
maps:find/2 2953 2.12 1707 [ 0.58]
'Elixir.Membrane.Pad':get_corresponding_bin_pad/1 2953 2.26 1813 [ 0.61]
gen_server:try_dispatch/4 2953 2.57 2067 [ 0.70]
'Elixir.Access':get/2 8859 2.76 2217 [ 0.25]
'Elixir.Keyword':put/3 2953 2.84 2285 [ 0.77]
'Elixir.Membrane.Core.Message':set_for_pad/2 2953 3.11 2500 [ 0.85]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 2953 3.47 2786 [ 0.94]
'Elixir.Membrane.Core.Bin':handle_info/2 2953 3.82 3072 [ 1.04]
'Elixir.Kernel':get_in/2 8859 3.94 3168 [ 0.36]
'Elixir.Access':get/3 8859 6.03 4849 [ 0.55]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 2953 6.24 5013 [ 1.70]
'Elixir.Membrane.Core.Bin.LinkingBuffer':store_or_send/3 2953 6.36 5111 [ 1.73]
gen_server:loop/7 2953 11.54 9273 [ 3.14]
erlang:send/2 2953 17.89 14375 [ 4.87]
--------------------------------------------------------------- ------ ------- ----- [----------]
Total: 115167 100.00% 80361 [ 0.70]
****** Process <9928.4170.0> -- 0.38 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Bunch':error_if_nil/2 994 0.22 281 [ 0.28]
'Elixir.Enumerable':impl_for/1 994 0.24 306 [ 0.31]
'Elixir.Enum':to_list/1 994 0.25 307 [ 0.31]
'Elixir.Membrane.Helper.GenServer':noreply/2 994 0.25 308 [ 0.31]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 994 0.25 312 [ 0.31]
'Elixir.Membrane.Core.Parent.LifecycleController':get_callback_action_handler/1 994 0.28 345 [ 0.35]
'Elixir.Membrane.Core.Bin.ActionHandler':'-handle_actions/4-fun-0-'/4 994 0.33 418 [ 0.42]
'Elixir.Membrane.Core.Parent.ChildLifeController':'-handle_forward/2-fun-0-'/2 994 0.37 468 [ 0.47]
erlang:'++'/2 994 0.39 493 [ 0.50]
'Elixir.Bunch.Enum':try_reduce/3 994 0.41 517 [ 0.52]
'Elixir.Membrane.Core.Bin.ActionHandler':handle_actions/4 994 0.44 556 [ 0.56]
'Elixir.Enumerable':'impl_for!'/1 994 0.46 576 [ 0.58]
'Elixir.Membrane.Core.Parent.ChildLifeController':handle_forward/2 994 0.51 639 [ 0.64]
'Elixir.Enum':reduce_while/3 994 0.51 642 [ 0.65]
'Elixir.Bunch.Enum':try_each/2 994 0.54 678 [ 0.68]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 994 0.57 710 [ 0.71]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 994 0.63 786 [ 0.79]
'Elixir.Enumerable.List':reduce/3 1988 0.68 852 [ 0.43]
'Elixir.Membrane.ICE.Bin':handle_other/3 994 0.69 857 [ 0.86]
'Elixir.Bunch.Enum':do_try_each/2 1988 0.72 905 [ 0.46]
'Elixir.Enumerable':reduce/3 994 0.73 909 [ 0.91]
'Elixir.Membrane.Helper.GenServer':noreply/1 3576 0.74 921 [ 0.26]
'Elixir.Membrane.Core.Parent.ChildrenModel':get_child_data/2 994 0.79 989 [ 0.99]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 3576 0.84 1054 [ 0.29]
lists:member/2 3576 0.85 1068 [ 0.30]
lists:keymember/3 3576 0.87 1087 [ 0.30]
'Elixir.Membrane.Core.Bin.ActionHandler':handle_action/4 994 0.93 1158 [ 1.16]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 994 0.95 1193 [ 1.20]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 994 0.96 1200 [ 1.21]
'Elixir.Membrane.Core.Parent.MessageDispatcher':handle_message/2 994 0.97 1213 [ 1.22]
gen_server:handle_common_reply/8 4570 0.98 1221 [ 0.27]
erlang:setelement/3 3576 1.01 1267 [ 0.35]
'Elixir.Membrane.Pad':get_corresponding_bin_name/1 3576 1.03 1292 [ 0.36]
'Elixir.Membrane.Core.Parent.LifecycleController':handle_other/2 994 1.05 1307 [ 1.31]
gen_server:try_dispatch/3 4570 1.09 1357 [ 0.30]
maps:find/2 3576 1.09 1368 [ 0.38]
'Elixir.Membrane.Core.Parent.ChildLifeController':do_handle_forward/2 994 1.10 1371 [ 1.38]
gen_server:decode_msg/9 4570 1.23 1540 [ 0.34]
'Elixir.Membrane.Core.Bin.LinkingBuffer':'currently_linking?'/2 3576 1.26 1576 [ 0.44]
'Elixir.Keyword':delete_key/2 7152 1.29 1614 [ 0.23]
'Elixir.Membrane.Core.Parent.LifecycleController':'-handle_other/2-fun-1-'/1 994 1.39 1737 [ 1.75]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 3576 1.40 1748 [ 0.49]
'Elixir.Bunch.Access':get_in/2 3576 1.45 1812 [ 0.51]
'Elixir.Membrane.Core.Bin.State':fetch/2 3576 1.45 1818 [ 0.51]
'Elixir.Enum':'member?'/2 3576 1.61 2017 [ 0.56]
'Elixir.Bunch':listify/1 8146 1.63 2041 [ 0.25]
'Elixir.Membrane.Pad':get_corresponding_bin_pad/1 3576 1.70 2119 [ 0.59]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 994 1.99 2485 [ 2.50]
gen_server:handle_msg/6 4570 2.03 2532 [ 0.55]
'Elixir.Access':get/2 11722 2.11 2631 [ 0.22]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 3576 2.11 2641 [ 0.74]
'Elixir.Membrane.Core.Message':set_for_pad/2 3576 2.36 2951 [ 0.83]
'Elixir.Keyword':put/3 3576 2.58 3225 [ 0.90]
gen_server:try_dispatch/4 4570 2.70 3368 [ 0.74]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 3576 2.72 3404 [ 0.95]
'Elixir.Kernel':get_in/2 10728 3.09 3863 [ 0.36]
'Elixir.Membrane.Core.Bin':handle_info/2 4570 3.85 4810 [ 1.05]
'Elixir.Access':get/3 11722 4.14 5168 [ 0.44]
'Elixir.Membrane.Core.Bin.LinkingBuffer':store_or_send/3 3576 4.63 5786 [ 1.62]
gen_server:loop/7 4570 9.48 11843 [ 2.59]
erlang:send/2 4570 17.04 21298 [ 4.66]
------------------------------------------------------------------------------- ------ ------- ------ [----------]
Total: 182206 100.00% 124958 [ 0.69]
****** Process <9928.4172.0> -- 0.05 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
gen_server:handle_common_reply/8 994 1.61 247 [ 0.25]
gen_server:try_dispatch/3 994 1.63 250 [ 0.25]
gen_server:decode_msg/9 994 1.81 277 [ 0.28]
gen_server:handle_msg/6 994 3.19 488 [ 0.49]
'Elixir.Map':get/3 994 3.20 489 [ 0.49]
'Elixir.Map':get/2 994 3.25 497 [ 0.50]
'Elixir.Membrane.DTLS.Handshake':is_hsk_packet/2 994 3.33 509 [ 0.51]
gen_server:try_dispatch/4 994 7.56 1157 [ 1.16]
gen_server:loop/7 994 14.74 2255 [ 2.27]
'Elixir.Membrane.ICE.Connector':handle_info/2 994 16.19 2477 [ 2.49]
erlang:send/2 994 43.48 6651 [ 6.69]
------------------------------------------------ ----- ------- ----- [----------]
Total: 10934 100.00% 15297 [ 1.40]
****** Process <9928.4173.0> -- 0.40 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
gen_server:try_dispatch/3 994 0.25 318 [ 0.32]
gen_server:handle_common_reply/8 994 0.26 333 [ 0.34]
'Elixir.ExLibnice':handle_info/2 994 0.85 1097 [ 1.10]
'Elixir.ExLibnice.Native':send_payload/4 2348 0.96 1240 [ 0.53]
gen_server:try_dispatch/4 994 1.01 1308 [ 1.32]
gen_server:decode_msg/9 3342 1.01 1312 [ 0.39]
gen_server:reply/2 2348 1.04 1350 [ 0.57]
gen_server:try_handle_call/4 2348 1.83 2376 [ 1.01]
'Elixir.ExLibnice':handle_call/3 2348 1.92 2485 [ 1.06]
gen_server:handle_msg/6 3342 2.44 3164 [ 0.95]
'Elixir.ExLibnice':call/4 2348 2.67 3454 [ 1.47]
gen:reply/2 2348 4.06 5261 [ 2.24]
erlang:send/2 994 6.98 9048 [ 9.10]
gen_server:loop/7 3342 17.91 23201 [ 6.94]
'Elixir.ExLibnice.Native.Nif':unifex_send_payload/4 2348 56.82 73608 [ 31.35]
--------------------------------------------------- ----- ------- ------ [----------]
Total: 31432 100.00% 129555 [ 4.12]
****** Process <9928.4174.0> -- 0.15 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 994 0.52 252 [ 0.25]
gen_server:try_dispatch/3 994 0.52 253 [ 0.25]
'Elixir.Enumerable':impl_for/1 994 0.53 259 [ 0.26]
'Elixir.Membrane.Helper.GenServer':noreply/2 994 0.56 273 [ 0.27]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 994 0.58 281 [ 0.28]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 994 0.60 289 [ 0.29]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 994 0.60 292 [ 0.29]
gen_server:handle_common_reply/8 994 0.60 292 [ 0.29]
lists:flatten/1 994 0.63 306 [ 0.31]
gen_server:decode_msg/9 994 0.64 309 [ 0.31]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 994 0.66 321 [ 0.32]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 994 0.66 322 [ 0.32]
'Elixir.Enum':split_while/2 994 0.66 322 [ 0.32]
'Elixir.Enum':drop_while/2 994 0.68 332 [ 0.33]
'Elixir.Bunch.Enum':try_reduce/3 994 0.69 335 [ 0.34]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 994 0.71 346 [ 0.35]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 994 0.72 350 [ 0.35]
lists:reverse/1 994 0.73 352 [ 0.35]
'Elixir.Enum':map/2 994 0.78 376 [ 0.38]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 994 0.78 380 [ 0.38]
erlang:'++'/2 994 0.80 387 [ 0.39]
'Elixir.List':flatten/1 994 0.81 394 [ 0.40]
maps:find/2 994 0.92 448 [ 0.45]
'Elixir.Enumerable':'impl_for!'/1 994 0.93 449 [ 0.45]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 994 0.95 461 [ 0.46]
'Elixir.Enum':reverse/1 1988 0.99 479 [ 0.24]
'Elixir.Enum':to_list/1 1988 0.99 479 [ 0.24]
'Elixir.Enum':reduce_while/3 994 1.02 496 [ 0.50]
'Elixir.Bunch':listify/1 1988 1.03 499 [ 0.25]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 994 1.08 526 [ 0.53]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 994 1.09 530 [ 0.53]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 994 1.12 544 [ 0.55]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 994 1.13 549 [ 0.55]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 994 1.15 560 [ 0.56]
'Elixir.Membrane.Core.Element.LifecycleController':handle_other/2 994 1.21 585 [ 0.59]
'Elixir.Access':get/2 2982 1.22 594 [ 0.20]
gen_server:handle_msg/6 994 1.23 595 [ 0.60]
'Elixir.Bunch.Enum':chunk_by_prev/3 994 1.25 604 [ 0.61]
'Elixir.Membrane.Core.Message':send/4 994 1.29 627 [ 0.63]
'Elixir.Membrane.Core.Element.State':fetch/2 994 1.32 640 [ 0.64]
'Elixir.Enum':split_while_list/3 994 1.33 645 [ 0.65]
'Elixir.Bunch.Access':get_in/2 994 1.39 673 [ 0.68]
'Elixir.Enumerable':reduce/3 994 1.45 701 [ 0.71]
'Elixir.Bunch.Enum':do_try_each/2 1988 1.45 701 [ 0.35]
'Elixir.Enumerable.List':reduce/3 1988 1.52 735 [ 0.37]
'Elixir.Bunch.Enum':try_each/2 994 1.59 772 [ 0.78]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 994 1.63 788 [ 0.79]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 994 1.67 808 [ 0.81]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 994 1.68 816 [ 0.82]
'Elixir.Enum':drop_while_list/2 1988 1.69 818 [ 0.41]
gen_server:try_dispatch/4 994 1.69 819 [ 0.82]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 1988 2.00 971 [ 0.49]
'Elixir.Membrane.Core.Element':handle_info/2 994 2.02 979 [ 0.98]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 994 2.15 1042 [ 1.05]
'Elixir.Kernel':get_in/2 2982 2.38 1152 [ 0.39]
lists:do_flatten/2 3976 2.62 1271 [ 0.32]
'Elixir.Access':get/3 2982 2.69 1306 [ 0.44]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 994 2.78 1350 [ 1.36]
'Elixir.Membrane.Core.Element.LifecycleController':'-handle_other/2-fun-0-'/1 994 2.93 1419 [ 1.43]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 994 3.00 1455 [ 1.46]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 994 4.13 2001 [ 2.01]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 994 4.13 2004 [ 2.02]
'Elixir.Membrane.ICE.Source':handle_other/3 994 4.88 2364 [ 2.38]
erlang:send/2 994 5.50 2668 [ 2.68]
gen_server:loop/7 994 7.31 3545 [ 3.57]
----------------------------------------------------------------------------------------- ----- ------- ----- [----------]
Total: 80514 100.00% 48491 [ 0.60]
****** Process <9928.4175.0> -- 2.01 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.Core.Message':send/4 234 0.02 148 [ 0.63]
erlang:send/2 234 0.07 479 [ 2.05]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 2348 0.10 648 [ 0.28]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 2348 0.10 659 [ 0.28]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 2348 0.10 685 [ 0.29]
gen_server:try_dispatch/3 2348 0.10 686 [ 0.29]
'Elixir.GenServer':whereis/1 2348 0.11 688 [ 0.29]
'Elixir.GenServer':call/2 2348 0.11 700 [ 0.30]
'Elixir.Enum':'-take_random/2-fun-0-'/2 2348 0.11 720 [ 0.31]
'Elixir.Membrane.Core.InputBuffer':store/2 2348 0.11 740 [ 0.32]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 2348 0.11 745 [ 0.32]
'Elixir.Keyword':get/2 2348 0.12 758 [ 0.32]
gen_server:decode_msg/9 2348 0.12 763 [ 0.32]
queue:in/2 2348 0.12 770 [ 0.33]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 2348 0.12 777 [ 0.33]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 2348 0.12 784 [ 0.33]
'Elixir.Membrane.ICE.Sink':'-handle_write_list/4-fun-0-'/2 2348 0.12 795 [ 0.34]
gen:call/4 2348 0.13 841 [ 0.36]
gen_server:handle_common_reply/8 2348 0.13 842 [ 0.36]
maps:merge/2 2348 0.13 844 [ 0.36]
'Elixir.Membrane.Helper.GenServer':noreply/2 2348 0.13 846 [ 0.36]
'Elixir.Bunch.Enum':try_reduce_while/3 2348 0.13 850 [ 0.36]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 2348 0.14 911 [ 0.39]
'Elixir.Membrane.Core.Message':for_pad/1 2348 0.15 957 [ 0.41]
lists:keyfind/3 2348 0.15 969 [ 0.41]
maps:remove/2 2348 0.17 1088 [ 0.46]
'Elixir.Enum':to_list/1 4696 0.18 1177 [ 0.25]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 4696 0.18 1204 [ 0.26]
'Elixir.Bunch.Access':get_and_update_in/3 2348 0.19 1211 [ 0.52]
'Elixir.Membrane.Core.Element.DemandHandler':'-supply_demand/2-fun-0-'/2 2348 0.19 1213 [ 0.52]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 4696 0.19 1248 [ 0.27]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 2348 0.19 1253 [ 0.53]
erlang:max/2 4930 0.20 1286 [ 0.26]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 4696 0.20 1300 [ 0.28]
lists:reverse/1 4696 0.20 1308 [ 0.28]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 4696 0.20 1316 [ 0.28]
'Elixir.ExLibnice':send_payload/4 2348 0.20 1320 [ 0.56]
'Elixir.Enum':split_while/2 4696 0.20 1339 [ 0.29]
'Elixir.Keyword':get/3 2348 0.21 1345 [ 0.57]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 4696 0.21 1356 [ 0.29]
'Elixir.Enum':drop_while/2 4696 0.21 1356 [ 0.29]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 4696 0.21 1362 [ 0.29]
'Elixir.Enumerable.MapSet':reduce/3 2348 0.21 1394 [ 0.59]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 4696 0.21 1401 [ 0.30]
'Elixir.Enum':'-take_random/2-anonymous-4-'/3 2348 0.22 1430 [ 0.61]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 2348 0.22 1431 [ 0.61]
gen_server:handle_msg/6 2348 0.22 1462 [ 0.62]
'Elixir.Membrane.ICE.Sink':handle_write_list/4 2348 0.22 1467 [ 0.62]
'Elixir.MapSet':put/2 2348 0.23 1520 [ 0.65]
erlang:'++'/2 4696 0.24 1560 [ 0.33]
maps:keys/1 2348 0.24 1568 [ 0.67]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 4696 0.25 1616 [ 0.34]
'Elixir.MapSet':to_list/1 2348 0.25 1624 [ 0.69]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 4696 0.25 1630 [ 0.35]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 2348 0.25 1636 [ 0.70]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 2348 0.26 1670 [ 0.71]
gen_server:try_dispatch/4 2348 0.26 1680 [ 0.72]
'Elixir.MapSet':delete/2 2348 0.26 1717 [ 0.73]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 2348 0.26 1723 [ 0.73]
'Elixir.Access':key/2 4696 0.27 1757 [ 0.37]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 4696 0.27 1766 [ 0.38]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 2348 0.27 1780 [ 0.76]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 2348 0.28 1815 [ 0.77]
'Elixir.Membrane.Core.InputBuffer':store/3 2348 0.28 1819 [ 0.77]
'Elixir.Qex':push/2 2348 0.28 1829 [ 0.78]
'Elixir.Enum':take_random/2 2348 0.28 1850 [ 0.79]
queue:out/1 7044 0.28 1855 [ 0.26]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 4696 0.29 1884 [ 0.40]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 4696 0.29 1920 [ 0.41]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 2348 0.30 1937 [ 0.82]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 2348 0.31 2045 [ 0.87]
'Elixir.Membrane.Core.Element':handle_info/2 2348 0.31 2054 [ 0.87]
'Elixir.Enum':map/2 7044 0.32 2068 [ 0.29]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 9392 0.33 2135 [ 0.23]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 2348 0.35 2262 [ 0.96]
'Elixir.Map':'update!'/3 2348 0.35 2294 [ 0.98]
'Elixir.Enum':split_while_list/3 4696 0.38 2492 [ 0.53]
'Elixir.Bunch.Enum':chunk_by_prev/3 4696 0.39 2557 [ 0.54]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 4696 0.40 2603 [ 0.55]
'Elixir.Membrane.ICE.Sink':handle_write/4 2348 0.42 2758 [ 1.17]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 2348 0.43 2814 [ 1.20]
'Elixir.GenServer':call/3 2348 0.45 2922 [ 1.24]
'Elixir.Membrane.Pad.Data':fetch/2 7044 0.45 2975 [ 0.42]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 2348 0.46 2991 [ 1.27]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 4696 0.46 3014 [ 0.64]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-4-'/1 4696 0.48 3147 [ 0.67]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 2348 0.48 3152 [ 1.34]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 4696 0.50 3277 [ 0.70]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 4696 0.51 3359 [ 0.72]
'Elixir.Bunch.Access':update_in/3 7044 0.52 3432 [ 0.49]
'Elixir.Membrane.Pad.Data':get_and_update/3 14088 0.55 3583 [ 0.25]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 4696 0.55 3607 [ 0.77]
'Elixir.Membrane.Core.Element.State':get_and_update/3 14088 0.55 3614 [ 0.26]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 7044 0.56 3650 [ 0.52]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 7044 0.56 3651 [ 0.52]
'Elixir.Enum':reverse/1 16436 0.56 3655 [ 0.22]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 7044 0.56 3690 [ 0.52]
'Elixir.Enum':drop_while_list/2 9392 0.57 3714 [ 0.40]
'Elixir.Enumerable':impl_for/1 16436 0.57 3727 [ 0.23]
'Elixir.Kernel':update_in/3 7044 0.59 3857 [ 0.55]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 9392 0.60 3909 [ 0.42]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 2348 0.60 3954 [ 1.68]
'Elixir.Bunch.Struct':update_in/3 4696 0.63 4093 [ 0.87]
'Elixir.Bunch.Enum':try_reduce/3 11740 0.63 4121 [ 0.35]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 9392 0.65 4278 [ 0.46]
'Elixir.Bunch.Access':put_in/3 9392 0.68 4460 [ 0.47]
'Elixir.Qex':pop/1 7044 0.69 4486 [ 0.64]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 9392 0.69 4512 [ 0.48]
'Elixir.Membrane.Core.InputBuffer':do_take/2 4696 0.71 4622 [ 0.98]
erlang:demonitor/2 2348 0.73 4755 [ 2.03]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 7044 0.73 4804 [ 0.68]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 4696 0.78 5091 [ 1.08]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 4696 0.83 5407 [ 1.15]
'Elixir.Kernel':put_in/3 9392 0.84 5498 [ 0.59]
'Elixir.Access':'-key/2-fun-0-'/5 4696 0.84 5506 [ 1.17]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 4696 0.86 5630 [ 1.20]
erlang:monitor/3 2348 0.89 5792 [ 2.47]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 2348 0.92 6048 [ 2.58]
'Elixir.Enum':reduce_while/3 14088 0.96 6297 [ 0.45]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 14088 1.02 6659 [ 0.47]
'Elixir.Enumerable':'impl_for!'/1 16436 1.07 6981 [ 0.42]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 4696 1.16 7559 [ 1.61]
maps:find/2 28176 1.18 7700 [ 0.27]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 9392 1.26 8219 [ 0.88]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 4696 1.27 8328 [ 1.77]
erlang:send/3 2348 1.32 8652 [ 3.68]
'Elixir.Membrane.Core.Element.State':fetch/2 21132 1.39 9092 [ 0.43]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 42264 1.40 9165 [ 0.22]
'Elixir.Bunch.Access':get_in/2 21132 1.40 9173 [ 0.43]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 35220 1.41 9219 [ 0.26]
'Elixir.Enumerable':reduce/3 16436 1.43 9328 [ 0.57]
'Elixir.Enumerable.List':reduce/3 28176 1.54 10091 [ 0.36]
gen:do_call/4 2348 1.83 11941 [ 5.09]
'Elixir.Access':get/2 70440 2.14 13968 [ 0.20]
'Elixir.Map':get/3 63396 2.28 14942 [ 0.24]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 35220 2.33 15224 [ 0.43]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 21132 2.63 17177 [ 0.81]
'Elixir.Bunch':listify/1 82180 2.66 17370 [ 0.21]
'Elixir.Kernel':get_and_update_in/3 61048 3.06 20045 [ 0.33]
'Elixir.Access':get_and_update/3 56352 3.20 20950 [ 0.37]
'Elixir.Access':get/3 70440 3.67 23983 [ 0.34]
'Elixir.Kernel':get_in/2 70440 3.68 24085 [ 0.34]
gen_server:loop/7 2348 4.01 26218 [ 11.17]
'Elixir.Map':get_and_update/3 56352 10.19 66648 [ 1.18]
----------------------------------------------------------------------------------------- ------- ------- ------ [----------]
Total: 1357846 100.00% 654107 [ 0.48]
****** Process <9928.4176.0> -- 6.42 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
lists:split/2 15 0.00 7 [ 0.47]
lists:split/3 60 0.00 16 [ 0.27]
'Elixir.Membrane.Buffer.Metric':from_unit/1 2348 0.03 619 [ 0.26]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 2348 0.03 620 [ 0.26]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-0-'/1 2348 0.03 631 [ 0.27]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_buffer/5-fun-0-'/2 2348 0.03 647 [ 0.28]
'Elixir.Enum':'-take_random/2-fun-0-'/2 2348 0.03 665 [ 0.28]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 2348 0.03 668 [ 0.28]
gen_server:try_dispatch/3 2582 0.03 669 [ 0.26]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 2348 0.03 672 [ 0.29]
lists:flatten/1 2348 0.03 681 [ 0.29]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 2348 0.03 700 [ 0.30]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 2348 0.03 711 [ 0.30]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 2582 0.03 712 [ 0.28]
'Elixir.Membrane.Core.InputBuffer':store/2 2348 0.03 717 [ 0.31]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 2348 0.03 727 [ 0.31]
maps:iterator/1 2552 0.04 734 [ 0.29]
'Elixir.Membrane.Core.Child.PadModel':'-update_multi/3-fun-0-'/2 2348 0.04 745 [ 0.32]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 2348 0.04 748 [ 0.32]
'Elixir.Keyword':get/2 2582 0.04 753 [ 0.29]
'Elixir.Membrane.Funnel':'-handle_process_list/4-fun-0-'/2 2348 0.04 755 [ 0.32]
'Elixir.Enum':reduce/3 2348 0.04 812 [ 0.35]
maps:merge/2 2348 0.04 841 [ 0.36]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 2348 0.04 883 [ 0.38]
'Elixir.Membrane.Helper.GenServer':noreply/2 2582 0.04 888 [ 0.34]
'Elixir.List':flatten/1 2348 0.04 891 [ 0.38]
gen_server:decode_msg/9 2582 0.04 892 [ 0.35]
queue:in/2 2348 0.04 912 [ 0.39]
'Elixir.Membrane.Core.Child.PadModel':apply_updates/2 2348 0.04 926 [ 0.39]
maps:remove/2 2348 0.05 951 [ 0.41]
'Elixir.Membrane.Core.Message':for_pad/1 2582 0.05 956 [ 0.37]
'Elixir.Bunch.Enum':try_reduce_while/3 2348 0.05 963 [ 0.41]
gen_server:handle_common_reply/8 2582 0.05 976 [ 0.38]
lists:keyfind/3 2582 0.05 1071 [ 0.41]
'Elixir.Membrane.Funnel':handle_process/4 2348 0.06 1152 [ 0.49]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_redemand/2-fun-0-'/2 2348 0.06 1189 [ 0.51]
'Elixir.Membrane.Core.Child.PadModel':'update_multi!'/3 2348 0.06 1205 [ 0.51]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 4696 0.06 1260 [ 0.27]
'Elixir.Bunch.Enum':try_each/2 2348 0.06 1285 [ 0.55]
'Elixir.MapSet':put/2 2348 0.06 1307 [ 0.56]
'Elixir.Enumerable.MapSet':reduce/3 2348 0.06 1348 [ 0.57]
'Elixir.Enum':'-take_random/2-anonymous-4-'/3 2348 0.07 1364 [ 0.58]
'Elixir.Membrane.Funnel':inputs_data/1 2552 0.07 1390 [ 0.54]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 2582 0.07 1443 [ 0.56]
'Elixir.Keyword':get/3 2582 0.07 1479 [ 0.57]
maps:keys/1 2348 0.07 1508 [ 0.64]
'Elixir.MapSet':to_list/1 2348 0.07 1513 [ 0.64]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 2582 0.07 1538 [ 0.60]
'Elixir.Membrane.Core.Message':send/4 2583 0.07 1565 [ 0.61]
erts_internal:map_next/3 2552 0.08 1576 [ 0.62]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 2582 0.08 1590 [ 0.62]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 2348 0.08 1628 [ 0.69]
'Elixir.MapSet':delete/2 2348 0.08 1640 [ 0.70]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 7248 0.08 1643 [ 0.23]
gen_server:handle_msg/6 2582 0.08 1682 [ 0.65]
'Elixir.Bunch.Enum':do_try_each/2 4696 0.08 1686 [ 0.36]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 2348 0.08 1688 [ 0.72]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 2348 0.08 1702 [ 0.72]
'Elixir.Membrane.Core.Element.ActionHandler':handle_redemand/2 2348 0.08 1729 [ 0.74]
'Elixir.Membrane.Core.InputBuffer':store/3 2348 0.08 1738 [ 0.74]
'Elixir.Membrane.Funnel':handle_process_list/4 2348 0.08 1752 [ 0.75]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 2348 0.09 1784 [ 0.76]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 2348 0.09 1826 [ 0.78]
'Elixir.Enum':split_while/2 7248 0.09 1873 [ 0.26]
gen_server:try_dispatch/4 2582 0.09 1883 [ 0.73]
'Elixir.Enum':drop_while/2 7248 0.09 1934 [ 0.27]
'Elixir.Enum':take_random/2 2348 0.09 1950 [ 0.83]
'Elixir.Qex':push/2 2348 0.09 1966 [ 0.84]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 2582 0.09 1983 [ 0.77]
'Elixir.Membrane.Core.Child.PadModel':update_multi/3 2348 0.10 2074 [ 0.88]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 2552 0.10 2104 [ 0.82]
'Elixir.Membrane.Core.Element':handle_info/2 2582 0.10 2139 [ 0.83]
'Elixir.Map':'update!'/3 2348 0.11 2198 [ 0.94]
'Elixir.Bunch.Access':get_and_update_in/3 4930 0.11 2224 [ 0.45]
'Elixir.Membrane.Core.Child.PadModel':'-apply_updates/2-fun-0-'/2 4696 0.11 2247 [ 0.48]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 7248 0.11 2257 [ 0.31]
'Elixir.Membrane.Funnel':handle_demand/5 2552 0.11 2283 [ 0.89]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 2348 0.11 2290 [ 0.98]
'Elixir.Map':update/4 2348 0.11 2315 [ 0.99]
'Elixir.Enum':to_list/1 9596 0.11 2318 [ 0.24]
maps:fold/3 2552 0.11 2325 [ 0.91]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 4900 0.11 2327 [ 0.47]
erlang:'++'/2 7248 0.11 2381 [ 0.33]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 2348 0.12 2404 [ 1.02]
'Elixir.Membrane.Core.Element.DemandHandler':handle_redemand/2 4696 0.14 2823 [ 0.60]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 2348 0.14 2896 [ 1.23]
'Elixir.Membrane.Pad.Data':fetch/2 7044 0.14 2973 [ 0.42]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 7044 0.14 2981 [ 0.42]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 7248 0.14 2994 [ 0.41]
lists:reverse/1 9800 0.15 3038 [ 0.31]
'Elixir.Enum':flat_map/2 2552 0.15 3110 [ 1.22]
lists:do_flatten/2 9392 0.15 3117 [ 0.33]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 4696 0.15 3163 [ 0.67]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 4930 0.16 3350 [ 0.68]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 7248 0.16 3360 [ 0.46]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 2348 0.16 3379 [ 1.44]
'Elixir.Bunch.Enum':chunk_by_prev/3 7248 0.18 3860 [ 0.53]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 2348 0.19 3939 [ 1.68]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 2348 0.20 4084 [ 1.74]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 2582 0.21 4397 [ 1.70]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 7248 0.21 4455 [ 0.61]
'Elixir.Enum':split_while_list/3 9596 0.22 4602 [ 0.48]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-2-'/2 22764 0.24 4949 [ 0.22]
erlang:max/2 25528 0.25 5316 [ 0.21]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 25293 0.26 5430 [ 0.21]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 25293 0.27 5618 [ 0.22]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 2582 0.27 5696 [ 2.21]
'Elixir.Enum':'-flat_map/2-anonymous-5-'/4 25520 0.28 5824 [ 0.23]
'Elixir.Membrane.Funnel':'-handle_demand/5-fun-0-'/1 22968 0.30 6308 [ 0.27]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 25293 0.30 6370 [ 0.25]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 30012 0.31 6397 [ 0.21]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 30012 0.31 6533 [ 0.22]
queue:out/1 27641 0.31 6559 [ 0.24]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 25293 0.32 6599 [ 0.26]
'Elixir.Membrane.Funnel':'-inputs_data/1-fun-0-'/1 25520 0.32 6651 [ 0.26]
maps:next/1 28072 0.32 6671 [ 0.24]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 30427 0.33 6854 [ 0.23]
lists:reverse/2 30654 0.37 7728 [ 0.25]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 30012 0.37 7827 [ 0.26]
'Elixir.Enum':map/2 32541 0.38 7852 [ 0.24]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 37524 0.38 7888 [ 0.21]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 7248 0.40 8383 [ 1.16]
'Elixir.Enumerable':impl_for/1 39585 0.40 8425 [ 0.21]
'Elixir.Access':key/2 25293 0.40 8441 [ 0.33]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 25293 0.41 8501 [ 0.34]
erlang:send/2 2583 0.48 10047 [ 3.89]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 22968 0.48 10049 [ 0.44]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 50609 0.51 10701 [ 0.21]
'Elixir.Bunch.Enum':try_reduce/3 34889 0.55 11477 [ 0.33]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 7248 0.56 11755 [ 1.62]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 25293 0.58 12137 [ 0.48]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 30012 0.60 12490 [ 0.42]
'Elixir.Membrane.Pad.Data':get_and_update/3 57887 0.61 12648 [ 0.22]
'Elixir.Bunch.Access':update_in/3 29989 0.61 12795 [ 0.43]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 30012 0.62 12877 [ 0.43]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 27641 0.65 13600 [ 0.49]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 29989 0.65 13619 [ 0.45]
'Elixir.Enum':reverse/1 64901 0.66 13809 [ 0.21]
'Elixir.Enum':drop_while_list/2 34912 0.66 13849 [ 0.40]
'Elixir.Membrane.Core.Element.State':get_and_update/3 60235 0.66 13871 [ 0.23]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 35123 0.68 14199 [ 0.40]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 32360 0.74 15407 [ 0.48]
'Elixir.Kernel':update_in/3 29989 0.74 15551 [ 0.52]
'Elixir.Enum':reduce_while/3 37237 0.76 15897 [ 0.43]
maps:fold_1/3 28072 0.77 16037 [ 0.57]
'Elixir.Enum':'-flat_map/2-fun-1-'/3 25520 0.78 16230 [ 0.64]
'Elixir.Enumerable':'impl_for!'/1 39585 0.78 16326 [ 0.41]
'Elixir.Qex':pop/1 27641 0.81 16875 [ 0.61]
'Elixir.Bunch.Struct':update_in/3 25293 0.87 18175 [ 0.72]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 22968 0.87 18243 [ 0.79]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 27641 0.88 18436 [ 0.67]
'Elixir.Membrane.Core.InputBuffer':do_take/2 25293 0.96 20032 [ 0.79]
maps:find/2 82039 0.98 20471 [ 0.25]
'Elixir.Bunch.Access':put_in/3 50609 0.99 20764 [ 0.41]
'Elixir.Enumerable':reduce/3 39585 1.01 21054 [ 0.53]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 50609 1.01 21204 [ 0.42]
'Elixir.Access':'-key/2-fun-0-'/5 25293 1.13 23556 [ 0.93]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 30012 1.16 24309 [ 0.81]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 25293 1.23 25667 [ 1.01]
'Elixir.Kernel':put_in/3 50609 1.28 26820 [ 0.53]
'Elixir.Enumerable.List':reduce/3 76641 1.28 26824 [ 0.35]
'Elixir.Bunch.Access':get_in/2 74995 1.45 30406 [ 0.41]
'Elixir.Membrane.Core.Element.State':fetch/2 74995 1.50 31250 [ 0.42]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 178357 1.67 34906 [ 0.20]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 25293 1.75 36576 [ 1.45]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 85498 1.91 39915 [ 0.47]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 50609 1.92 40111 [ 0.79]
'Elixir.Access':get/2 234611 2.13 44444 [ 0.19]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 135230 2.41 50399 [ 0.37]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 132882 2.60 54331 [ 0.41]
gen_server:loop/7 2582 2.71 56666 [ 21.95]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 74995 2.88 60163 [ 0.80]
'Elixir.Bunch':listify/1 321046 3.16 66035 [ 0.21]
'Elixir.Map':get/3 266233 3.20 66784 [ 0.25]
'Elixir.Kernel':get_in/2 232029 3.59 75023 [ 0.32]
'Elixir.Kernel':get_and_update_in/3 263885 3.87 80932 [ 0.31]
'Elixir.Access':get_and_update/3 238592 3.91 81748 [ 0.34]
'Elixir.Access':get/3 234611 3.99 83400 [ 0.36]
'Elixir.Map':get_and_update/3 238592 10.76 224882 [ 0.94]
----------------------------------------------------------------------------------------- ------- ------- ------- [----------]
Total: 5104439 100.00% 2089957 [ 0.41]
****** Process <9928.4177.0> -- 0.49 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.Helper.GenServer':noreply/1 6747 1.09 1741 [ 0.26]
gen_server:try_dispatch/3 6747 1.10 1765 [ 0.26]
gen_server:handle_common_reply/8 6747 1.11 1772 [ 0.26]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 6747 1.25 2001 [ 0.30]
'Elixir.Membrane.Pad':get_corresponding_bin_name/1 6747 1.25 2011 [ 0.30]
lists:member/2 6747 1.27 2034 [ 0.30]
lists:keymember/3 6747 1.28 2055 [ 0.30]
erlang:setelement/3 6747 1.41 2268 [ 0.34]
gen_server:decode_msg/9 6747 1.55 2486 [ 0.37]
'Elixir.Membrane.Core.Bin.LinkingBuffer':'currently_linking?'/2 6747 1.73 2777 [ 0.41]
'Elixir.Bunch':listify/1 13494 1.87 2991 [ 0.22]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 6747 1.95 3121 [ 0.46]
maps:find/2 6747 2.02 3241 [ 0.48]
'Elixir.Keyword':delete_key/2 13494 2.06 3300 [ 0.24]
'Elixir.Bunch.Access':get_in/2 6747 2.06 3302 [ 0.49]
'Elixir.Membrane.Core.Bin.State':fetch/2 6747 2.12 3399 [ 0.50]
gen_server:handle_msg/6 6747 2.19 3514 [ 0.52]
'Elixir.Enum':'member?'/2 6747 2.30 3682 [ 0.55]
'Elixir.Membrane.Pad':get_corresponding_bin_pad/1 6747 2.47 3957 [ 0.59]
'Elixir.Access':get/2 20241 2.61 4177 [ 0.21]
gen_server:try_dispatch/4 6747 2.78 4461 [ 0.66]
'Elixir.Keyword':put/3 6747 3.31 5308 [ 0.79]
'Elixir.Membrane.Core.Message':set_for_pad/2 6747 3.39 5432 [ 0.81]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 6747 3.75 6010 [ 0.89]
'Elixir.Membrane.Core.Bin':handle_info/2 6747 4.29 6873 [ 1.02]
'Elixir.Kernel':get_in/2 20241 4.43 7105 [ 0.35]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 6747 4.50 7221 [ 1.07]
'Elixir.Access':get/3 20241 6.08 9740 [ 0.48]
'Elixir.Membrane.Core.Bin.LinkingBuffer':store_or_send/3 6747 6.80 10906 [ 1.62]
gen_server:loop/7 6747 9.44 15132 [ 2.24]
erlang:send/2 6747 16.55 26533 [ 3.93]
--------------------------------------------------------------- ------ ------- ------ [----------]
Total: 263133 100.00% 160315 [ 0.61]
****** Process <9928.4179.0> -- 0.65 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.EventProtocol.Any':'async?'/1 69 0.01 20 [ 0.29]
'Elixir.Membrane.EventProtocol.Any':'sticky?'/1 69 0.01 20 [ 0.29]
'Elixir.Membrane.RTP.SSRCRouter':'-handle_event/4-fun-0-'/3 49 0.01 23 [ 0.47]
'Elixir.Membrane.Core.Element.ActionHandler':handle_event/3 69 0.01 24 [ 0.35]
'Elixir.Enum':filter/2 49 0.01 24 [ 0.49]
'Elixir.Membrane.Core.Element.EventController':exec_handle_event/3 69 0.01 26 [ 0.38]
'Elixir.Membrane.RTP.SSRCRouter':'-handle_event/4-fun-1-'/2 49 0.01 28 [ 0.57]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 89 0.01 29 [ 0.33]
'Elixir.Membrane.Event':'async?'/1 69 0.01 29 [ 0.42]
'Elixir.Membrane.Core.Element.EventController':handle_special_event/3 69 0.02 32 [ 0.46]
'Elixir.Membrane.Core.Element.EventController':check_sync/2 69 0.02 33 [ 0.48]
'Elixir.Membrane.Core.Child.PadModel':'assert_instance!'/2 69 0.02 35 [ 0.51]
'Elixir.Membrane.Event':'event?'/1 69 0.02 36 [ 0.52]
'Elixir.Enum':'-flat_map_reduce/3-fun-1-'/3 49 0.02 38 [ 0.78]
'Elixir.Membrane.Core.Element.EventController':'buffers_before_event_present?'/1 49 0.02 45 [ 0.92]
'Elixir.Membrane.Event':'sticky?'/1 69 0.02 46 [ 0.67]
'Elixir.Enum':flat_map_reduce/3 49 0.02 49 [ 1.00]
'Elixir.Membrane.EventProtocol':impl_for/1 207 0.02 51 [ 0.25]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 89 0.02 52 [ 0.58]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 89 0.02 52 [ 0.58]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 89 0.03 56 [ 0.63]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 89 0.03 57 [ 0.64]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-6-'/3 69 0.03 60 [ 0.87]
'Elixir.Membrane.Core.Child.PadModel':update_data/4 89 0.03 61 [ 0.69]
'Elixir.Membrane.EventProtocol':'async?'/1 69 0.03 61 [ 0.88]
'Elixir.Membrane.RTP.SSRCRouter':'-handle_demand/5-fun-0-'/2 89 0.03 63 [ 0.71]
'Elixir.Enum':filter_list/2 98 0.03 65 [ 0.66]
'Elixir.Membrane.EventProtocol':'impl_for!'/1 138 0.03 66 [ 0.48]
'Elixir.Membrane.Core.Element.DemandHandler':'-update_demand/3-fun-0-'/2 89 0.04 77 [ 0.87]
'Elixir.Membrane.RTP.SSRCRouter':handle_demand/5 89 0.04 84 [ 0.94]
'Elixir.Membrane.Core.Element.EventController':'-do_exec_handle_event/4-fun-0-'/1 69 0.04 90 [ 1.30]
'Elixir.Membrane.Core.Element.EventController':exec_handle_event/4 69 0.04 91 [ 1.32]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 89 0.05 96 [ 1.08]
'Elixir.Membrane.Core.Element.EventController':do_exec_handle_event/4 69 0.05 96 [ 1.39]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 89 0.05 98 [ 1.10]
'Elixir.Membrane.RTP.SSRCRouter':handle_event/4 69 0.05 103 [ 1.49]
'Elixir.Membrane.Core.Element.ActionHandler':send_event/3 69 0.05 115 [ 1.67]
'Elixir.Membrane.EventProtocol':'sticky?'/1 69 0.05 116 [ 1.68]
'Elixir.Membrane.Core.Element.EventController':handle_event/3 69 0.06 125 [ 1.81]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 89 0.07 149 [ 1.67]
'Elixir.Membrane.Buffer.Metric':from_unit/1 883 0.11 235 [ 0.27]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 883 0.11 242 [ 0.27]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_buffer/5-fun-0-'/2 883 0.12 245 [ 0.28]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 883 0.12 248 [ 0.28]
'Elixir.Membrane.Core.InputBuffer':store/2 883 0.12 248 [ 0.28]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 883 0.12 251 [ 0.28]
'Elixir.Membrane.Core.Child.PadModel':'-update_multi/3-fun-0-'/2 883 0.12 257 [ 0.29]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 972 0.12 258 [ 0.27]
lists:flatten/1 883 0.12 259 [ 0.29]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 883 0.12 264 [ 0.30]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 883 0.13 273 [ 0.31]
queue:in/2 883 0.13 276 [ 0.31]
gen_server:try_dispatch/3 1041 0.13 276 [ 0.27]
'Elixir.Membrane.RTP.SSRCRouter':'-handle_process_list/4-fun-0-'/2 883 0.13 279 [ 0.32]
erlang:max/2 1060 0.13 282 [ 0.27]
'Elixir.Keyword':get/2 1041 0.14 289 [ 0.28]
'Elixir.List':flatten/1 883 0.14 289 [ 0.33]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 883 0.14 299 [ 0.34]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 972 0.14 305 [ 0.31]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 972 0.15 307 [ 0.32]
'Elixir.Enum':reduce/3 883 0.15 313 [ 0.35]
'Elixir.Membrane.Helper.GenServer':noreply/2 1041 0.15 316 [ 0.30]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 1288 0.15 327 [ 0.25]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 932 0.16 331 [ 0.36]
'Elixir.Access':key/2 972 0.16 348 [ 0.36]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 972 0.17 353 [ 0.36]
gen_server:decode_msg/9 1041 0.17 355 [ 0.34]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 972 0.17 362 [ 0.37]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 883 0.17 365 [ 0.41]
gen_server:handle_common_reply/8 1041 0.17 366 [ 0.35]
'Elixir.Membrane.RTP.SSRCRouter':'waiting_for_linking?'/2 932 0.17 368 [ 0.39]
maps:merge/2 952 0.18 379 [ 0.40]
'Elixir.Bunch.Enum':try_reduce_while/3 883 0.18 388 [ 0.44]
'Elixir.Membrane.Core.Child.PadModel':apply_updates/2 883 0.19 396 [ 0.45]
'Elixir.Membrane.Core.Message':for_pad/1 1041 0.20 424 [ 0.41]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 1766 0.21 438 [ 0.25]
'Elixir.Enum':split_while/2 1924 0.21 445 [ 0.23]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 1924 0.21 446 [ 0.23]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 1924 0.21 449 [ 0.23]
'Elixir.Membrane.Core.Child.PadModel':'update_multi!'/3 883 0.22 457 [ 0.52]
'Elixir.Bunch.Enum':try_each/2 883 0.22 457 [ 0.52]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 1924 0.22 465 [ 0.24]
lists:reverse/1 1973 0.22 471 [ 0.24]
lists:keyfind/3 1041 0.23 494 [ 0.47]
'Elixir.Enum':drop_while/2 1924 0.23 496 [ 0.26]
queue:out/1 1855 0.24 500 [ 0.27]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 1855 0.24 500 [ 0.27]
'Elixir.Membrane.RTP.SSRCRouter':maybe_handle_new_stream/4 883 0.24 502 [ 0.57]
'Elixir.Bunch.Access':get_and_update_in/3 1061 0.25 520 [ 0.49]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 1041 0.25 524 [ 0.50]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 1924 0.25 539 [ 0.28]
'Elixir.Membrane.Core.Message':send/4 1040 0.26 558 [ 0.54]
'Elixir.Membrane.RTP.SSRCRouter':handle_process_list/4 883 0.27 563 [ 0.64]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 883 0.27 569 [ 0.64]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 883 0.27 575 [ 0.65]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 972 0.28 586 [ 0.60]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 972 0.28 598 [ 0.62]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 883 0.28 599 [ 0.68]
'Elixir.Enum':to_list/1 2807 0.29 617 [ 0.22]
gen_server:handle_msg/6 1041 0.29 617 [ 0.59]
'Elixir.Keyword':get/3 1041 0.30 630 [ 0.61]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 1924 0.31 652 [ 0.34]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 883 0.32 668 [ 0.76]
'Elixir.Enum':map/2 2738 0.32 670 [ 0.24]
'Elixir.Bunch.Enum':do_try_each/2 1766 0.32 673 [ 0.38]
'Elixir.Qex':push/2 883 0.32 678 [ 0.77]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 972 0.33 701 [ 0.72]
'Elixir.Membrane.Core.InputBuffer':store/3 883 0.33 708 [ 0.80]
'Elixir.Membrane.RTP.SSRCRouter':maybe_add_to_linking_buffer/4 932 0.35 743 [ 0.80]
'Elixir.Membrane.Core.Child.PadModel':update_multi/3 883 0.36 754 [ 0.85]
'Elixir.Bunch.Struct':update_in/3 972 0.36 756 [ 0.78]
gen_server:try_dispatch/4 1041 0.37 792 [ 0.76]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 3868 0.38 800 [ 0.21]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 883 0.38 802 [ 0.91]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 883 0.38 806 [ 0.91]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 1855 0.39 826 [ 0.45]
'Elixir.Bunch.Access':put_in/3 1855 0.39 830 [ 0.45]
'Elixir.Membrane.Core.Element':handle_info/2 1041 0.40 856 [ 0.82]
'Elixir.Enum':split_while_list/3 1924 0.41 860 [ 0.45]
erlang:'++'/2 2807 0.41 865 [ 0.31]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 1924 0.41 872 [ 0.45]
'Elixir.Membrane.Pad.Data':get_and_update/3 3799 0.42 879 [ 0.23]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 883 0.42 880 [ 1.00]
'Elixir.Access':'-key/2-fun-0-'/5 972 0.44 930 [ 0.96]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 1924 0.44 930 [ 0.48]
'Elixir.Kernel':put_in/3 1855 0.45 954 [ 0.51]
'Elixir.Membrane.Core.InputBuffer':do_take/2 972 0.45 955 [ 0.98]
'Elixir.Bunch.Enum':chunk_by_prev/3 1924 0.45 957 [ 0.50]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 1041 0.46 971 [ 0.93]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 1924 0.46 978 [ 0.51]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 1924 0.48 1009 [ 0.52]
'Elixir.Qex':pop/1 1855 0.49 1035 [ 0.56]
'Elixir.Enumerable':impl_for/1 4711 0.49 1036 [ 0.22]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 883 0.50 1067 [ 1.21]
'Elixir.Membrane.Pad.Data':fetch/2 2649 0.51 1070 [ 0.40]
lists:do_flatten/2 3532 0.51 1073 [ 0.30]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 2649 0.51 1085 [ 0.41]
'Elixir.Map':update/4 883 0.52 1101 [ 1.25]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 972 0.52 1106 [ 1.14]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 1855 0.53 1120 [ 0.60]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 883 0.53 1128 [ 1.28]
'Elixir.Membrane.Core.Element.State':get_and_update/3 4682 0.54 1133 [ 0.24]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 1924 0.54 1139 [ 0.59]
'Elixir.Bunch.Access':update_in/3 2738 0.57 1213 [ 0.44]
'Elixir.Enum':reverse/1 5703 0.58 1228 [ 0.22]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 1766 0.58 1230 [ 0.70]
'Elixir.Membrane.RTP.SSRCRouter':handle_process/4 883 0.59 1242 [ 1.41]
'Elixir.Bunch.Enum':try_reduce/3 3779 0.59 1255 [ 0.33]
'Elixir.Membrane.Core.Child.PadModel':'-apply_updates/2-fun-0-'/2 1766 0.59 1256 [ 0.71]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 3054 0.61 1280 [ 0.42]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 1924 0.61 1290 [ 0.67]
'Elixir.Enum':drop_while_list/2 3848 0.61 1299 [ 0.34]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 2807 0.62 1302 [ 0.46]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 2738 0.63 1330 [ 0.49]
'Elixir.Kernel':update_in/3 2738 0.64 1355 [ 0.49]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 883 0.68 1442 [ 1.63]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 883 0.70 1488 [ 1.69]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 1855 0.73 1549 [ 0.84]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 972 0.76 1606 [ 1.65]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 1924 0.98 2072 [ 1.08]
'Elixir.Enum':reduce_while/3 4662 0.99 2093 [ 0.45]
'Elixir.Enumerable':'impl_for!'/1 4711 0.99 2097 [ 0.45]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 1041 1.14 2419 [ 2.32]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 5476 1.15 2442 [ 0.45]
'Elixir.Enumerable':reduce/3 4711 1.19 2508 [ 0.53]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 13163 1.27 2695 [ 0.20]
'Elixir.Enumerable.List':reduce/3 8450 1.29 2739 [ 0.32]
maps:find/2 10474 1.35 2847 [ 0.27]
'Elixir.Bunch.Access':get_in/2 7805 1.50 3180 [ 0.41]
'Elixir.Membrane.Core.Element.State':fetch/2 7805 1.52 3216 [ 0.41]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 1924 1.66 3517 [ 1.83]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 12556 1.94 4097 [ 0.33]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 11604 2.24 4730 [ 0.41]
'Elixir.Map':get/3 19700 2.26 4783 [ 0.24]
'Elixir.Access':get/2 26242 2.28 4832 [ 0.18]
'Elixir.Bunch':listify/1 26918 2.64 5591 [ 0.21]
'Elixir.Kernel':get_and_update_in/3 18817 2.74 5802 [ 0.31]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 7805 2.96 6254 [ 0.80]
'Elixir.Access':get_and_update/3 17845 2.99 6316 [ 0.35]
erlang:send/2 1040 3.78 8004 [ 7.70]
gen_server:loop/7 1041 3.79 8018 [ 7.70]
'Elixir.Kernel':get_in/2 26064 4.06 8585 [ 0.33]
'Elixir.Access':get/3 26242 4.20 8882 [ 0.34]
'Elixir.Map':get_and_update/3 17845 8.43 17828 [ 1.00]
----------------------------------------------------------------------------------------- ------ ------- ------ [----------]
Total: 472257 100.00% 211569 [ 0.45]
****** Process <9928.4180.0> -- 0.80 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Enum':'-take_random/2-fun-0-'/2 111 0.02 39 [ 0.35]
maps:remove/2 111 0.02 53 [ 0.48]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-0-'/1 111 0.03 66 [ 0.59]
'Elixir.Enumerable.MapSet':reduce/3 111 0.03 68 [ 0.61]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_redemand/2-fun-0-'/2 111 0.03 69 [ 0.62]
'Elixir.Enum':'-take_random/2-anonymous-4-'/3 111 0.03 70 [ 0.63]
'Elixir.Membrane.RTP.Parser':handle_demand/5 199 0.03 70 [ 0.35]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 199 0.03 79 [ 0.40]
'Elixir.MapSet':delete/2 111 0.03 86 [ 0.77]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-2-'/2 111 0.03 87 [ 0.78]
'Elixir.MapSet':put/2 111 0.03 88 [ 0.79]
maps:keys/1 111 0.04 94 [ 0.85]
'Elixir.MapSet':to_list/1 111 0.04 94 [ 0.85]
'Elixir.Membrane.Core.Element.ActionHandler':handle_redemand/2 111 0.04 97 [ 0.87]
'Elixir.Enum':take_random/2 111 0.04 102 [ 0.92]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 199 0.04 116 [ 0.58]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 199 0.05 125 [ 0.63]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 199 0.05 134 [ 0.67]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 199 0.05 135 [ 0.68]
'Elixir.Map':'update!'/3 111 0.05 139 [ 1.25]
'Elixir.Membrane.Core.Element.DemandHandler':handle_redemand/2 222 0.06 157 [ 0.71]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 199 0.07 175 [ 0.88]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 199 0.08 218 [ 1.10]
'Elixir.Membrane.Buffer.Metric':from_unit/1 883 0.10 256 [ 0.29]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 994 0.11 285 [ 0.29]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_buffer/5-fun-0-'/2 883 0.11 286 [ 0.32]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 994 0.11 290 [ 0.29]
gen_server:try_dispatch/3 1082 0.12 299 [ 0.28]
lists:flatten/1 994 0.12 304 [ 0.31]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 994 0.12 305 [ 0.31]
'Elixir.Membrane.Core.InputBuffer':store/2 994 0.12 309 [ 0.31]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 994 0.12 312 [ 0.31]
'Elixir.Membrane.RTP.Utils':strip_padding/2 883 0.12 316 [ 0.36]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 1193 0.12 319 [ 0.27]
'Elixir.Membrane.Core.Child.PadModel':'-update_multi/3-fun-0-'/2 883 0.13 334 [ 0.38]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 994 0.13 337 [ 0.34]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 199 0.13 343 [ 1.72]
erlang:max/2 1193 0.13 343 [ 0.29]
'Elixir.Map':take/2 883 0.13 343 [ 0.39]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 994 0.13 347 [ 0.35]
'Elixir.Bunch.Enum':try_reduce_while/3 994 0.13 347 [ 0.35]
'Elixir.Enum':reduce/3 883 0.13 347 [ 0.39]
'Elixir.Membrane.RTP.Parser':'-handle_process_list/4-fun-0-'/2 994 0.13 348 [ 0.35]
'Elixir.Keyword':get/2 1082 0.14 359 [ 0.33]
gen_server:handle_common_reply/8 1082 0.14 359 [ 0.33]
'Elixir.Membrane.Helper.GenServer':noreply/2 1082 0.14 360 [ 0.33]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 994 0.14 364 [ 0.37]
gen_server:decode_msg/9 1082 0.14 365 [ 0.34]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 1193 0.14 368 [ 0.31]
'Elixir.List':flatten/1 994 0.15 378 [ 0.38]
maps:merge/2 994 0.15 383 [ 0.39]
queue:in/2 994 0.15 386 [ 0.39]
'Elixir.Membrane.RTP.Packet':'-parse/2-lc$^0/1-0-'/1 883 0.15 386 [ 0.44]
'Elixir.Membrane.Core.Child.PadModel':apply_updates/2 883 0.15 394 [ 0.45]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 1193 0.15 398 [ 0.33]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 994 0.16 411 [ 0.41]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 1193 0.17 438 [ 0.37]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 1591 0.17 445 [ 0.28]
'Elixir.Membrane.Core.Message':for_pad/1 1082 0.18 459 [ 0.42]
'Elixir.Membrane.Core.Child.PadModel':'update_multi!'/3 883 0.18 467 [ 0.53]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 1193 0.19 490 [ 0.41]
lists:keyfind/3 1082 0.19 491 [ 0.45]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 2187 0.20 508 [ 0.23]
'Elixir.Membrane.RTP.Packet':identify/1 994 0.21 534 [ 0.54]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 1877 0.21 538 [ 0.29]
'Elixir.Enum':split_while/2 2187 0.21 542 [ 0.25]
'Elixir.Access':key/2 1193 0.21 547 [ 0.46]
'Elixir.Membrane.Core.Message':send/4 994 0.22 583 [ 0.59]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 2386 0.23 584 [ 0.24]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 1193 0.23 604 [ 0.51]
'Elixir.Enum':drop_while/2 2187 0.23 606 [ 0.28]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 2298 0.23 607 [ 0.26]
'Elixir.Bunch.Enum':try_each/2 994 0.24 611 [ 0.61]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 2298 0.24 617 [ 0.27]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 2187 0.25 642 [ 0.29]
gen_server:handle_msg/6 1082 0.25 645 [ 0.60]
'Elixir.Bunch.Access':get_and_update_in/3 1193 0.25 656 [ 0.55]
queue:out/1 2187 0.25 661 [ 0.30]
lists:reverse/1 2187 0.26 670 [ 0.31]
'Elixir.Keyword':get/3 1082 0.26 684 [ 0.63]
erlang:'++'/2 2187 0.27 693 [ 0.32]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 994 0.28 719 [ 0.72]
'Elixir.Membrane.RTP.Packet':parse_header_extension/2 883 0.28 727 [ 0.82]
'Elixir.Membrane.RTP.Parser':handle_process_list/4 994 0.28 738 [ 0.74]
'Elixir.Enum':to_list/1 3181 0.29 754 [ 0.24]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 994 0.30 766 [ 0.77]
'Elixir.Bunch.Enum':do_try_each/2 1988 0.30 772 [ 0.39]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 994 0.31 797 [ 0.80]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 994 0.31 804 [ 0.81]
gen_server:try_dispatch/4 1082 0.31 804 [ 0.74]
'Elixir.Membrane.Core.Child.PadModel':update_multi/3 883 0.32 818 [ 0.93]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 994 0.32 825 [ 0.83]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 2187 0.33 865 [ 0.40]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 1193 0.34 871 [ 0.73]
'Elixir.Enum':map/2 3181 0.34 895 [ 0.28]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 1193 0.35 904 [ 0.76]
'Elixir.Membrane.Core.Element':handle_info/2 1082 0.37 948 [ 0.88]
'Elixir.Membrane.Core.InputBuffer':store/3 994 0.37 972 [ 0.98]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 4573 0.38 981 [ 0.21]
'Elixir.Qex':push/2 994 0.38 982 [ 0.99]
'Elixir.Bunch.Struct':update_in/3 1193 0.38 992 [ 0.83]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 994 0.39 1006 [ 1.01]
'Elixir.Map':update/4 883 0.40 1027 [ 1.16]
'Elixir.Membrane.Pad.Data':get_and_update/3 4573 0.40 1044 [ 0.23]
'Elixir.Membrane.Core.Child.PadModel':'-apply_updates/2-fun-0-'/2 1766 0.41 1070 [ 0.61]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 1082 0.42 1077 [ 1.00]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 2386 0.43 1105 [ 0.46]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 2649 0.43 1124 [ 0.42]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 2187 0.44 1137 [ 0.52]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 2298 0.44 1138 [ 0.50]
'Elixir.Enum':split_while_list/3 2298 0.44 1141 [ 0.50]
'Elixir.Bunch.Enum':chunk_by_prev/3 2187 0.45 1160 [ 0.53]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 994 0.45 1164 [ 1.17]
'Elixir.Bunch.Access':put_in/3 2386 0.45 1170 [ 0.49]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 1304 0.46 1202 [ 0.92]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 2298 0.46 1205 [ 0.52]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 994 0.47 1211 [ 1.22]
'Elixir.Enumerable':impl_for/1 5479 0.47 1223 [ 0.22]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 2298 0.49 1274 [ 0.55]
lists:do_flatten/2 3976 0.50 1287 [ 0.32]
'Elixir.Kernel':put_in/3 2386 0.52 1337 [ 0.56]
'Elixir.Membrane.Core.InputBuffer':do_take/2 1193 0.52 1340 [ 1.12]
'Elixir.Membrane.Pad.Data':fetch/2 2982 0.52 1340 [ 0.45]
'Elixir.Access':'-key/2-fun-0-'/5 1193 0.52 1346 [ 1.13]
'Elixir.Membrane.Core.Element.State':get_and_update/3 5456 0.52 1361 [ 0.25]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 2187 0.53 1364 [ 0.62]
'Elixir.Qex':pop/1 2187 0.53 1369 [ 0.63]
'Elixir.Enum':reverse/1 6672 0.54 1402 [ 0.21]
'Elixir.Bunch.Access':update_in/3 3070 0.57 1492 [ 0.49]
'Elixir.Bunch.Enum':try_reduce/3 4374 0.58 1495 [ 0.34]
maps:from_list/1 883 0.59 1520 [ 1.72]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 1193 0.59 1523 [ 1.28]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 2187 0.59 1533 [ 0.70]
'Elixir.Kernel':update_in/3 3070 0.60 1546 [ 0.50]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 3579 0.60 1556 [ 0.43]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 3070 0.60 1559 [ 0.51]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 2298 0.61 1578 [ 0.69]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 3292 0.62 1601 [ 0.49]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 1988 0.62 1610 [ 0.81]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 994 0.64 1656 [ 1.67]
'Elixir.Enum':drop_while_list/2 4374 0.64 1656 [ 0.38]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 994 0.65 1698 [ 1.71]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 994 0.77 1998 [ 2.01]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 1193 0.79 2044 [ 1.71]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 2386 0.79 2062 [ 0.86]
'Elixir.Map':take/3 7064 0.89 2317 [ 0.33]
'Elixir.Enum':reduce_while/3 5368 0.90 2343 [ 0.44]
'Elixir.Enumerable':'impl_for!'/1 5479 0.94 2431 [ 0.44]
'Elixir.Membrane.RTP.Parser':handle_process/4 994 1.04 2705 [ 2.72]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 1082 1.05 2716 [ 2.51]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 2187 1.14 2950 [ 1.35]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 6362 1.14 2965 [ 0.47]
'Elixir.Enumerable':reduce/3 5479 1.15 2986 [ 0.54]
'Elixir.Membrane.RTP.Packet':parse/2 883 1.17 3040 [ 3.44]
maps:find/2 12128 1.18 3072 [ 0.25]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 15485 1.19 3100 [ 0.20]
'Elixir.Enumerable.List':reduce/3 9876 1.26 3282 [ 0.33]
'Elixir.Bunch.Access':get_in/2 9146 1.40 3645 [ 0.40]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 14602 1.47 3809 [ 0.26]
'Elixir.Membrane.Core.Element.State':fetch/2 9146 1.49 3854 [ 0.42]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 2187 1.49 3862 [ 1.77]
'Elixir.Map':get/3 23128 2.10 5453 [ 0.24]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 13719 2.12 5493 [ 0.40]
'Elixir.Access':get/2 30619 2.19 5672 [ 0.19]
'Elixir.Bunch':listify/1 31701 2.56 6653 [ 0.21]
'Elixir.Kernel':get_and_update_in/3 22134 2.76 7155 [ 0.32]
erlang:send/2 994 2.76 7161 [ 7.20]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 9146 2.82 7305 [ 0.80]
'Elixir.Access':get_and_update/3 20941 2.98 7733 [ 0.37]
'Elixir.Kernel':get_in/2 30420 3.91 10153 [ 0.33]
'Elixir.Access':get/3 30619 3.98 10335 [ 0.34]
gen_server:loop/7 1082 4.22 10941 [ 10.11]
'Elixir.Map':get_and_update/3 20941 7.98 20713 [ 0.99]
----------------------------------------------------------------------------------------- ------ ------- ------ [----------]
Total: 556350 100.00% 259493 [ 0.47]
****** Process <9928.4181.0> -- 0.02 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 2 0.00 0 [ 0.00]
'Elixir.Membrane.SRTP.Encryptor':handle_demand/5 2 0.02 1 [ 0.50]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 2 0.02 1 [ 0.50]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 2 0.02 1 [ 0.50]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 2 0.02 1 [ 0.50]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 2 0.02 1 [ 0.50]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 2 0.02 1 [ 0.50]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 2 0.04 2 [ 1.00]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 2 0.08 4 [ 2.00]
'Elixir.Keyword':get/2 22 0.12 6 [ 0.27]
maps:merge/2 20 0.12 6 [ 0.30]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 20 0.12 6 [ 0.30]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_buffer/5-fun-0-'/2 20 0.12 6 [ 0.30]
'Elixir.Membrane.SRTP.Encryptor':'-handle_process_list/4-fun-0-'/2 20 0.12 6 [ 0.30]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 20 0.12 6 [ 0.30]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 20 0.12 6 [ 0.30]
'Elixir.Membrane.Buffer.Metric':from_unit/1 20 0.12 6 [ 0.30]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 20 0.12 6 [ 0.30]
gen_server:try_dispatch/3 22 0.12 6 [ 0.27]
queue:in/2 20 0.14 7 [ 0.35]
'Elixir.Access':key/2 22 0.14 7 [ 0.32]
lists:flatten/1 20 0.14 7 [ 0.35]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 20 0.14 7 [ 0.35]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 26 0.14 7 [ 0.27]
'Elixir.Membrane.Core.Message':for_pad/1 22 0.14 7 [ 0.32]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 22 0.14 7 [ 0.32]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 20 0.14 7 [ 0.35]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 20 0.14 7 [ 0.35]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 22 0.14 7 [ 0.32]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 22 0.14 7 [ 0.32]
'Elixir.Membrane.Core.InputBuffer':store/2 20 0.14 7 [ 0.35]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 22 0.14 7 [ 0.32]
erlang:max/2 22 0.14 7 [ 0.32]
gen_server:handle_common_reply/8 22 0.14 7 [ 0.32]
'Elixir.ExLibSRTP':protect_rtcp/2 20 0.14 7 [ 0.35]
lists:keyfind/3 22 0.16 8 [ 0.36]
'Elixir.Membrane.Core.Child.PadModel':apply_updates/2 20 0.16 8 [ 0.40]
'Elixir.Membrane.Core.Child.PadModel':'-update_multi/3-fun-0-'/2 20 0.16 8 [ 0.40]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 20 0.16 8 [ 0.40]
'Elixir.Enum':reduce/3 20 0.16 8 [ 0.40]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 22 0.18 9 [ 0.41]
'Elixir.ExLibSRTP.Native':protect/5 20 0.18 9 [ 0.45]
'Elixir.ExLibSRTP':protect_rtcp/3 20 0.18 9 [ 0.45]
lists:reverse/1 42 0.20 10 [ 0.24]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 42 0.20 10 [ 0.24]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 42 0.20 10 [ 0.24]
'Elixir.Enum':drop_while/2 42 0.20 10 [ 0.24]
'Elixir.Enum':split_while/2 42 0.20 10 [ 0.24]
'Elixir.Keyword':get/3 22 0.22 11 [ 0.50]
'Elixir.Membrane.SRTP.Encryptor':handle_process_list/4 20 0.22 11 [ 0.55]
'Elixir.Membrane.Core.Child.PadModel':'update_multi!'/3 20 0.22 11 [ 0.55]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 44 0.22 11 [ 0.25]
'Elixir.Bunch.Enum':try_each/2 20 0.22 11 [ 0.55]
'Elixir.Membrane.RTP.Packet':identify/1 20 0.22 11 [ 0.55]
queue:out/1 42 0.24 12 [ 0.29]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 42 0.24 12 [ 0.29]
'Elixir.Bunch.Access':get_and_update_in/3 22 0.24 12 [ 0.55]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 40 0.24 12 [ 0.30]
gen_server:handle_msg/6 22 0.24 12 [ 0.55]
'Elixir.Membrane.Core.Message':send/4 20 0.26 13 [ 0.65]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 20 0.26 13 [ 0.65]
gen_server:try_dispatch/4 22 0.26 13 [ 0.59]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 42 0.27 14 [ 0.33]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 20 0.27 14 [ 0.70]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 22 0.27 14 [ 0.64]
gen_server:decode_msg/9 22 0.27 14 [ 0.64]
'Elixir.List':flatten/1 20 0.29 15 [ 0.75]
'Elixir.Bunch.Enum':do_try_each/2 40 0.29 15 [ 0.38]
'Elixir.Qex':push/2 20 0.29 15 [ 0.75]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 20 0.29 15 [ 0.75]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 22 0.31 16 [ 0.73]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 20 0.31 16 [ 0.80]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 20 0.31 16 [ 0.80]
'Elixir.Membrane.Core.Element':handle_info/2 22 0.33 17 [ 0.77]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 22 0.33 17 [ 0.77]
'Elixir.Membrane.Core.Child.PadModel':update_multi/3 20 0.33 17 [ 0.85]
'Elixir.Bunch.Struct':update_in/3 22 0.33 17 [ 0.77]
'Elixir.Membrane.Helper.GenServer':noreply/2 22 0.33 17 [ 0.77]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 20 0.35 18 [ 0.90]
'Elixir.Membrane.Core.InputBuffer':store/3 20 0.35 18 [ 0.90]
'Elixir.Map':update/4 20 0.35 18 [ 0.90]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 42 0.37 19 [ 0.45]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 86 0.37 19 [ 0.22]
'Elixir.Enum':split_while_list/3 42 0.37 19 [ 0.45]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 42 0.39 20 [ 0.48]
'Elixir.Membrane.Pad.Data':get_and_update/3 86 0.39 20 [ 0.23]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 20 0.41 21 [ 1.05]
'Elixir.Bunch.Access':put_in/3 44 0.41 21 [ 0.48]
'Elixir.Membrane.Core.InputBuffer':do_take/2 22 0.41 21 [ 0.95]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 22 0.41 21 [ 0.95]
erlang:'++'/2 42 0.41 21 [ 0.50]
'Elixir.Access':'-key/2-fun-0-'/5 22 0.43 22 [ 1.00]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 42 0.43 22 [ 0.52]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 44 0.43 22 [ 0.50]
'Elixir.Enum':to_list/1 62 0.43 22 [ 0.35]
'Elixir.Kernel':put_in/3 44 0.45 23 [ 0.52]
'Elixir.Qex':pop/1 42 0.47 24 [ 0.57]
'Elixir.Membrane.Core.Element.State':get_and_update/3 106 0.49 25 [ 0.24]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 22 0.49 25 [ 1.14]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 42 0.51 26 [ 0.62]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 22 0.51 26 [ 1.18]
'Elixir.Enum':reverse/1 126 0.51 26 [ 0.21]
'Elixir.Bunch.Enum':try_reduce_while/3 20 0.53 27 [ 1.35]
'Elixir.Enumerable':impl_for/1 104 0.55 28 [ 0.27]
lists:do_flatten/2 80 0.55 28 [ 0.35]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 42 0.55 28 [ 0.67]
'Elixir.Bunch.Access':update_in/3 62 0.57 29 [ 0.47]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 60 0.57 29 [ 0.48]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 42 0.57 29 [ 0.69]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 62 0.61 31 [ 0.50]
'Elixir.Bunch.Enum':chunk_by_prev/3 42 0.61 31 [ 0.74]
'Elixir.Enum':map/2 62 0.61 31 [ 0.50]
'Elixir.Kernel':update_in/3 62 0.63 32 [ 0.52]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 42 0.63 32 [ 0.76]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 42 0.63 32 [ 0.76]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 20 0.65 33 [ 1.65]
'Elixir.Bunch.Enum':try_reduce/3 84 0.67 34 [ 0.40]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 20 0.69 35 [ 1.75]
'Elixir.Membrane.SRTP.Encryptor':handle_process/4 20 0.69 35 [ 1.75]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 44 0.71 36 [ 0.82]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 22 0.71 36 [ 1.64]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 62 0.71 36 [ 0.58]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 20 0.73 37 [ 1.85]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 42 0.82 42 [ 1.00]
'Elixir.Membrane.Pad.Data':fetch/2 60 0.82 42 [ 0.70]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 20 0.84 43 [ 2.15]
'Elixir.Enum':drop_while_list/2 84 0.90 46 [ 0.55]
'Elixir.Membrane.Core.Child.PadModel':'-apply_updates/2-fun-0-'/2 40 0.92 47 [ 1.18]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 22 0.94 48 [ 2.18]
'Elixir.Enum':reduce_while/3 104 1.00 51 [ 0.49]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 124 1.08 55 [ 0.44]
'Elixir.Enumerable':'impl_for!'/1 104 1.12 57 [ 0.55]
maps:find/2 232 1.12 57 [ 0.25]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 66 1.14 58 [ 0.88]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 298 1.14 58 [ 0.19]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 40 1.16 59 [ 1.48]
'Elixir.Bunch.Access':get_in/2 172 1.30 66 [ 0.38]
'Elixir.Membrane.Core.Element.State':fetch/2 172 1.32 67 [ 0.39]
erlang:send/2 20 1.32 67 [ 3.35]
'Elixir.Enumerable.List':reduce/3 186 1.32 67 [ 0.36]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 278 1.37 70 [ 0.25]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 42 1.39 71 [ 1.69]
'Elixir.Enumerable':reduce/3 104 1.49 76 [ 0.73]
'Elixir.Map':get/3 446 1.94 99 [ 0.22]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 258 2.18 111 [ 0.43]
'Elixir.Access':get/2 578 2.24 114 [ 0.20]
'Elixir.Bunch':listify/1 600 2.34 119 [ 0.20]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 172 2.57 131 [ 0.76]
'Elixir.Kernel':get_and_update_in/3 426 2.65 135 [ 0.32]
'Elixir.Access':get_and_update/3 404 2.71 138 [ 0.34]
'Elixir.Kernel':get_in/2 576 3.46 176 [ 0.31]
gen_server:loop/7 22 4.01 204 [ 9.27]
'Elixir.Access':get/3 578 4.12 210 [ 0.36]
'Elixir.ExLibSRTP.Native.Nif':unifex_protect/5 20 4.46 227 [ 11.35]
'Elixir.Map':get_and_update/3 404 7.44 379 [ 0.94]
----------------------------------------------------------------------------------------- ----- ------- ---- [----------]
Total: 10480 100.00% 5093 [ 0.49]
****** Process <9928.4182.0> -- 0.12 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.EventProtocol.Any':'sticky?'/1 20 0.01 5 [ 0.25]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 20 0.01 6 [ 0.30]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 20 0.01 6 [ 0.30]
'Elixir.Membrane.EventProtocol.Any':'async?'/1 20 0.01 6 [ 0.30]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 20 0.02 7 [ 0.35]
'Elixir.Membrane.Core.Element.EventController':check_sync/2 20 0.02 7 [ 0.35]
'Elixir.Membrane.Core.Element.EventController':exec_handle_event/3 20 0.02 7 [ 0.35]
'Elixir.Membrane.Event':'async?'/1 20 0.02 7 [ 0.35]
'Elixir.List':flatten/1 20 0.02 7 [ 0.35]
lists:flatten/1 20 0.02 8 [ 0.40]
'Elixir.Membrane.Core.Element.EventController':handle_special_event/3 20 0.02 8 [ 0.40]
'Elixir.Membrane.Core.Child.PadModel':'assert_instance!'/2 20 0.02 9 [ 0.45]
'Elixir.Keyword':'fetch!'/2 20 0.02 10 [ 0.50]
'Elixir.Membrane.Event':'sticky?'/1 20 0.02 10 [ 0.50]
'Elixir.Bunch.Enum':try_each/2 20 0.03 11 [ 0.55]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-6-'/3 20 0.03 12 [ 0.60]
'Elixir.Membrane.RTCP.SdesPacket.Chunk':'__struct__'/0 49 0.04 15 [ 0.31]
'Elixir.Bunch.Enum':do_try_each/2 40 0.04 16 [ 0.40]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-2-'/2 49 0.04 17 [ 0.35]
erts_internal:time_unit/0 49 0.04 17 [ 0.35]
'Elixir.Enum':reduce/3 49 0.04 17 [ 0.35]
'Elixir.Membrane.EventProtocol':'async?'/1 20 0.04 17 [ 0.85]
'Elixir.Membrane.RTCP.FeedbackPacket.TWCC':decode/1 47 0.04 18 [ 0.38]
'Elixir.Membrane.Core.Element.ActionHandler':handle_event/3 49 0.04 18 [ 0.37]
'Elixir.Membrane.EventProtocol':'impl_for!'/1 40 0.04 18 [ 0.45]
'Elixir.Membrane.RTCP.FeedbackPacket.FIR':encode/1 20 0.05 19 [ 0.95]
'Elixir.Kernel':struct/2 49 0.05 21 [ 0.43]
lists:reverse/2 47 0.05 22 [ 0.47]
'Elixir.Membrane.RTCP.SdesPacket':parse_items/1 49 0.05 22 [ 0.45]
'Elixir.Kernel':'validate_struct!'/3 49 0.06 23 [ 0.47]
'Elixir.Membrane.Core.Element.EventController':do_exec_handle_event/4 20 0.06 23 [ 1.15]
'Elixir.Membrane.EventProtocol':'sticky?'/1 20 0.06 23 [ 1.15]
'Elixir.BiMap':fetch_key/2 40 0.06 24 [ 0.60]
'Elixir.Membrane.Core.Element.EventController':exec_handle_event/4 20 0.06 25 [ 1.25]
'Elixir.Membrane.EventProtocol':impl_for/1 89 0.06 25 [ 0.28]
lists:do_flatten/2 80 0.07 27 [ 0.34]
'Elixir.Membrane.RTCP.Header':serialize/2 20 0.07 27 [ 1.35]
'Elixir.System':normalize_time_unit/1 98 0.07 28 [ 0.29]
'Elixir.Membrane.Core.Element.EventController':'-do_exec_handle_event/4-fun-0-'/1 20 0.07 28 [ 1.40]
'Elixir.BiMap':'fetch_key!'/2 40 0.07 28 [ 0.70]
'Elixir.Membrane.Core.Element.EventController':handle_event/3 20 0.07 29 [ 1.45]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 111 0.07 30 [ 0.27]
'Elixir.Membrane.RTCP.Parser':handle_event/4 20 0.08 31 [ 1.55]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 20 0.08 33 [ 1.65]
'Elixir.Enum':'-take_random/2-fun-0-'/2 111 0.08 34 [ 0.31]
'Elixir.Membrane.RTCP.Parser':'-handle_process_list/4-fun-0-'/2 111 0.09 36 [ 0.32]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 111 0.09 36 [ 0.32]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 111 0.09 37 [ 0.33]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-0-'/1 111 0.09 38 [ 0.34]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 111 0.09 38 [ 0.34]
erlang:system_time/0 49 0.09 38 [ 0.78]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 111 0.10 39 [ 0.35]
'Elixir.Membrane.Core.InputBuffer':store/2 111 0.10 39 [ 0.35]
'Elixir.Bunch.Enum':try_reduce_while/3 111 0.10 39 [ 0.35]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 111 0.10 40 [ 0.36]
queue:in/2 111 0.10 41 [ 0.37]
'Elixir.Membrane.Helper.GenServer':noreply/2 131 0.10 42 [ 0.32]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 98 0.10 42 [ 0.43]
'Elixir.Membrane.RTCP.ReportPacketBlock':decode/1 111 0.11 44 [ 0.40]
'Elixir.Membrane.Core.Message':send/4 80 0.11 44 [ 0.55]
gen_server:decode_msg/9 131 0.11 44 [ 0.34]
gen_server:try_dispatch/3 131 0.11 44 [ 0.34]
'Elixir.Kernel':'-struct/2-fun-0-'/2 49 0.11 45 [ 0.92]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 111 0.11 45 [ 0.41]
gen_server:handle_common_reply/8 131 0.11 45 [ 0.34]
'Elixir.Membrane.RTCP.Packet':parse/1 111 0.12 47 [ 0.42]
maps:remove/2 111 0.12 48 [ 0.43]
'Elixir.Membrane.RTCP.SdesPacket':'-decode/2-fun-0-'/1 49 0.12 50 [ 1.02]
'Elixir.Enum':flat_map/2 111 0.12 50 [ 0.45]
maps:merge/2 131 0.13 51 [ 0.39]
'Elixir.System':convert_time_unit/3 49 0.13 51 [ 1.04]
'Elixir.Membrane.RTCP.SdesPacket':parse_chunks/2 98 0.13 51 [ 0.52]
'Elixir.Membrane.Event':'event?'/1 49 0.13 51 [ 1.04]
'Elixir.Membrane.RTCP.Parser':handle_demand/5 111 0.13 54 [ 0.49]
'Elixir.Membrane.Core.Message':for_pad/1 131 0.14 55 [ 0.42]
'Elixir.Enum':into/3 49 0.14 56 [ 1.14]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 222 0.15 60 [ 0.27]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 111 0.15 60 [ 0.54]
'Elixir.Enumerable.MapSet':reduce/3 111 0.15 61 [ 0.55]
'Elixir.Membrane.RTP.Utils':strip_padding/2 207 0.16 63 [ 0.30]
'Elixir.Membrane.RTCP.Parser':'-process_packets/2-fun-0-'/2 207 0.16 63 [ 0.30]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_redemand/2-fun-0-'/2 111 0.16 63 [ 0.57]
'Elixir.Keyword':get/2 151 0.16 64 [ 0.42]
'Elixir.Enum':'-take_random/2-anonymous-4-'/3 111 0.16 64 [ 0.58]
lists:keyfind/3 171 0.16 65 [ 0.38]
'Elixir.Membrane.Time':vm_time/0 49 0.16 65 [ 1.33]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 222 0.17 67 [ 0.30]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 222 0.17 69 [ 0.31]
erlang:max/2 233 0.17 70 [ 0.30]
maps:keys/1 111 0.18 71 [ 0.64]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 111 0.18 71 [ 0.64]
'Elixir.Membrane.RTCP.FeedbackPacket':encode/1 20 0.18 72 [ 3.60]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 111 0.18 74 [ 0.67]
'Elixir.MapSet':to_list/1 111 0.18 74 [ 0.67]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 111 0.18 74 [ 0.67]
'Elixir.Membrane.RTCP.Parser':handle_process_list/4 111 0.18 75 [ 0.68]
'Elixir.Membrane.RTCP.SdesPacket':parse_items/2 98 0.19 76 [ 0.78]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 111 0.19 77 [ 0.69]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 111 0.19 78 [ 0.70]
maps:from_list/1 49 0.19 79 [ 1.61]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 222 0.19 79 [ 0.36]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 353 0.19 79 [ 0.22]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 111 0.20 81 [ 0.73]
'Elixir.Membrane.RTCP.ReportPacketBlock':decode/2 149 0.20 82 [ 0.55]
'Elixir.MapSet':delete/2 111 0.20 82 [ 0.74]
'Elixir.MapSet':put/2 111 0.20 82 [ 0.74]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 222 0.20 82 [ 0.37]
'Elixir.Enum':to_list/1 373 0.20 82 [ 0.22]
'Elixir.Enum':split_while/2 353 0.20 83 [ 0.24]
gen_server:handle_msg/6 131 0.20 83 [ 0.63]
erlang:convert_time_unit/3 49 0.21 84 [ 1.71]
'Elixir.Membrane.RTCP.SdesPacket':decode/2 49 0.21 86 [ 1.76]
'Elixir.Enum':take_random/2 111 0.21 86 [ 0.77]
'Elixir.Membrane.RTCP.Packet':serialize/1 20 0.21 87 [ 4.35]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 402 0.22 88 [ 0.22]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 111 0.22 88 [ 0.79]
queue:out/1 333 0.22 89 [ 0.27]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 402 0.22 89 [ 0.22]
gen_server:try_dispatch/4 131 0.22 89 [ 0.68]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 111 0.22 91 [ 0.82]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 111 0.22 91 [ 0.82]
'Elixir.Membrane.Core.Element.ActionHandler':handle_redemand/2 111 0.23 93 [ 0.84]
lists:reverse/1 353 0.23 94 [ 0.27]
'Elixir.Qex':push/2 111 0.23 95 [ 0.86]
'Elixir.Membrane.Core.InputBuffer':store/3 111 0.24 97 [ 0.87]
'Elixir.Membrane.Core.Element':handle_info/2 131 0.24 99 [ 0.76]
'Elixir.Membrane.RTCP.Parser':process_packets/2 111 0.24 99 [ 0.89]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 353 0.24 99 [ 0.28]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 402 0.24 99 [ 0.25]
'Elixir.Access':key/2 222 0.25 100 [ 0.45]
'Elixir.Keyword':get/3 151 0.25 103 [ 0.68]
'Elixir.Enum':drop_while/2 353 0.25 103 [ 0.29]
'Elixir.Membrane.Core.Element.ActionHandler':send_event/3 49 0.26 104 [ 2.12]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 111 0.26 104 [ 0.94]
'Elixir.Membrane.RTCP.ReceiverReportPacket':decode/2 62 0.26 106 [ 1.71]
'Elixir.Bunch.Access':get_and_update_in/3 222 0.27 108 [ 0.49]
'Elixir.Map':'update!'/3 111 0.27 108 [ 0.97]
'Elixir.Membrane.RTCP.FeedbackPacket':decode/2 47 0.27 110 [ 2.34]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 242 0.27 110 [ 0.45]
'Elixir.Enum':map/2 402 0.27 111 [ 0.28]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 484 0.29 116 [ 0.24]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 353 0.29 118 [ 0.33]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 111 0.29 118 [ 1.06]
'Elixir.Membrane.RTCP.Parser':process_rtcp/2 207 0.30 123 [ 0.59]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 222 0.31 127 [ 0.57]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 222 0.32 131 [ 0.59]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 111 0.34 137 [ 1.23]
'Elixir.Membrane.Core.Element.DemandHandler':handle_redemand/2 222 0.35 140 [ 0.63]
'Elixir.Membrane.Pad.Data':fetch/2 333 0.35 140 [ 0.42]
'Elixir.Kernel':struct/3 98 0.35 142 [ 1.45]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 111 0.35 142 [ 1.28]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 131 0.37 150 [ 1.15]
'Elixir.Membrane.Time':from_ntp_timestamp/1 49 0.38 153 [ 3.12]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 735 0.38 156 [ 0.21]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 222 0.39 157 [ 0.71]
'Elixir.BiMap':fetch/2 254 0.39 157 [ 0.62]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 111 0.39 160 [ 1.44]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 333 0.40 162 [ 0.49]
'Elixir.Membrane.RTCP.SenderReportPacket':decode/2 49 0.40 162 [ 3.31]
'Elixir.Bunch.Enum':chunk_by_prev/3 353 0.41 166 [ 0.47]
'Elixir.Kernel':update_in/3 333 0.41 167 [ 0.50]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 402 0.42 169 [ 0.42]
'Elixir.Bunch.Access':update_in/3 333 0.42 170 [ 0.51]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 444 0.43 173 [ 0.39]
'Elixir.Membrane.Pad.Data':get_and_update/3 777 0.44 177 [ 0.23]
'Elixir.Enumerable':impl_for/1 908 0.45 183 [ 0.20]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 111 0.45 183 [ 1.65]
'Elixir.Membrane.Core.Element.State':get_and_update/3 777 0.46 185 [ 0.24]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 353 0.46 185 [ 0.52]
'Elixir.Membrane.RTCP.Header':parse/1 207 0.46 188 [ 0.91]
'Elixir.Bunch.Struct':update_in/3 222 0.47 191 [ 0.86]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 353 0.48 194 [ 0.55]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 444 0.48 196 [ 0.44]
erlang:'++'/2 671 0.48 196 [ 0.29]
'Elixir.Qex':pop/1 333 0.50 203 [ 0.61]
'Elixir.Membrane.Core.InputBuffer':do_take/2 222 0.52 210 [ 0.95]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 333 0.52 210 [ 0.63]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 402 0.52 212 [ 0.53]
'Elixir.Enum':split_while_list/3 464 0.53 213 [ 0.46]
'Elixir.Membrane.RTCP.Parser':handle_process/4 111 0.53 214 [ 1.93]
'Elixir.Enum':flat_map_list/2 318 0.53 215 [ 0.68]
'Elixir.Bunch.Access':put_in/3 444 0.53 217 [ 0.49]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 111 0.56 226 [ 2.04]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 513 0.57 230 [ 0.45]
'Elixir.Kernel':put_in/3 444 0.57 232 [ 0.52]
'Elixir.Enum':drop_while_list/2 644 0.59 241 [ 0.37]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 222 0.61 246 [ 1.11]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 333 0.68 275 [ 0.83]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 402 0.69 278 [ 0.69]
'Elixir.Access':'-key/2-fun-0-'/5 222 0.69 279 [ 1.26]
'Elixir.Bunch.Enum':try_reduce/3 686 0.70 283 [ 0.41]
'Elixir.Enum':reverse/1 1199 0.70 283 [ 0.24]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 706 0.71 289 [ 0.41]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 131 0.77 314 [ 2.40]
'Elixir.Enum':reduce_while/3 797 0.80 324 [ 0.41]
erlang:send/2 80 0.83 335 [ 4.19]
'Elixir.Enumerable':'impl_for!'/1 908 0.85 343 [ 0.38]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 222 0.87 354 [ 1.59]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 444 0.92 373 [ 0.84]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 804 0.95 384 [ 0.48]
'Elixir.Membrane.RTCP.Packet':parse_packet/2 207 1.05 425 [ 2.05]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 353 1.06 429 [ 1.22]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 2331 1.16 471 [ 0.20]
'Elixir.Membrane.RTCP.Packet':do_parse/2 318 1.21 489 [ 1.54]
'Elixir.Enumerable':reduce/3 908 1.24 502 [ 0.55]
'Elixir.Enumerable.List':reduce/3 1643 1.30 526 [ 0.32]
maps:find/2 2179 1.44 583 [ 0.27]
'Elixir.Bunch.Access':get_in/2 1552 1.47 597 [ 0.38]
'Elixir.Membrane.Core.Element.State':fetch/2 1552 1.54 625 [ 0.40]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 2349 1.55 627 [ 0.27]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 353 1.73 701 [ 1.99]
'Elixir.Map':get/3 3490 2.06 835 [ 0.24]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 2329 2.28 923 [ 0.40]
'Elixir.Access':get/2 5149 2.46 1000 [ 0.19]
'Elixir.Bunch':listify/1 5213 2.75 1115 [ 0.21]
'Elixir.Kernel':get_and_update_in/3 3330 2.78 1129 [ 0.34]
'Elixir.Access':get_and_update/3 3108 2.84 1152 [ 0.37]
gen_server:loop/7 131 2.87 1163 [ 8.88]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 1552 3.48 1411 [ 0.91]
'Elixir.Kernel':get_in/2 4989 3.80 1543 [ 0.31]
'Elixir.Access':get/3 5149 3.90 1584 [ 0.31]
'Elixir.Map':get_and_update/3 3108 6.85 2781 [ 0.89]
----------------------------------------------------------------------------------------- ----- ------- ----- [----------]
Total: 89425 100.00% 40569 [ 0.45]
****** Process <9928.4183.0> -- 0.09 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 11 0.01 3 [ 0.27]
'Elixir.Membrane.SRTCP.Decryptor':handle_demand/5 11 0.01 4 [ 0.36]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 11 0.02 6 [ 0.55]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 11 0.02 6 [ 0.55]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 11 0.02 6 [ 0.55]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 11 0.02 7 [ 0.64]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 11 0.03 8 [ 0.73]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 11 0.04 12 [ 1.09]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 11 0.08 24 [ 2.18]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 111 0.11 33 [ 0.30]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_buffer/5-fun-0-'/2 111 0.12 34 [ 0.31]
'Elixir.Membrane.Buffer.Metric':from_unit/1 111 0.12 34 [ 0.31]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 111 0.12 35 [ 0.32]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 111 0.12 35 [ 0.32]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 111 0.12 36 [ 0.32]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 122 0.12 36 [ 0.30]
erlang:max/2 122 0.13 37 [ 0.30]
'Elixir.Keyword':get/2 122 0.13 38 [ 0.31]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 111 0.13 38 [ 0.34]
'Elixir.Membrane.Core.InputBuffer':store/2 111 0.13 38 [ 0.34]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 122 0.13 39 [ 0.32]
'Elixir.Bunch.Enum':try_reduce_while/3 111 0.13 39 [ 0.35]
gen_server:try_dispatch/3 122 0.14 40 [ 0.33]
'Elixir.Membrane.Core.Child.PadModel':'-update_multi/3-fun-0-'/2 111 0.14 41 [ 0.37]
'Elixir.List':flatten/1 111 0.14 41 [ 0.37]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 111 0.14 41 [ 0.37]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 122 0.14 42 [ 0.34]
maps:merge/2 111 0.15 43 [ 0.39]
'Elixir.Access':key/2 122 0.15 43 [ 0.35]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 122 0.15 43 [ 0.35]
gen_server:handle_common_reply/8 122 0.15 43 [ 0.35]
'Elixir.Enum':reduce/3 111 0.15 44 [ 0.40]
'Elixir.ExLibSRTP':unprotect_rtcp/2 111 0.15 45 [ 0.41]
lists:flatten/1 111 0.16 46 [ 0.41]
'Elixir.Membrane.Core.Child.PadModel':apply_updates/2 111 0.16 47 [ 0.42]
'Elixir.Membrane.Helper.GenServer':noreply/2 122 0.16 47 [ 0.39]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 111 0.16 47 [ 0.42]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 111 0.17 48 [ 0.43]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 122 0.17 49 [ 0.40]
gen_server:decode_msg/9 122 0.18 52 [ 0.43]
'Elixir.Membrane.Core.Message':for_pad/1 122 0.18 53 [ 0.43]
'Elixir.Membrane.SRTCP.Decryptor':'-handle_process_list/4-fun-0-'/2 111 0.19 54 [ 0.49]
lists:keyfind/3 122 0.20 58 [ 0.48]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 233 0.20 59 [ 0.25]
'Elixir.ExLibSRTP.Native':unprotect/4 111 0.20 59 [ 0.53]
'Elixir.Membrane.Core.Child.PadModel':'update_multi!'/3 111 0.21 61 [ 0.55]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 244 0.21 61 [ 0.25]
'Elixir.ExLibSRTP':unprotect_rtcp/3 111 0.21 61 [ 0.55]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 233 0.21 62 [ 0.27]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 144 0.21 62 [ 0.43]
'Elixir.Enum':drop_while/2 233 0.21 62 [ 0.27]
queue:in/2 111 0.22 63 [ 0.57]
'Elixir.Bunch.Enum':try_each/2 111 0.22 63 [ 0.57]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 233 0.22 64 [ 0.27]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 222 0.22 65 [ 0.29]
'Elixir.Bunch.Access':get_and_update_in/3 122 0.23 67 [ 0.55]
'Elixir.Enum':split_while/2 233 0.23 67 [ 0.29]
lists:reverse/1 233 0.25 72 [ 0.31]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 111 0.26 76 [ 0.68]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 111 0.26 76 [ 0.68]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 122 0.27 77 [ 0.63]
'Elixir.Keyword':get/3 122 0.27 78 [ 0.64]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 233 0.27 78 [ 0.33]
queue:out/1 233 0.27 79 [ 0.34]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 122 0.27 79 [ 0.65]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 111 0.28 80 [ 0.72]
gen_server:handle_msg/6 122 0.29 85 [ 0.70]
erlang:'++'/2 233 0.31 89 [ 0.38]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 122 0.31 91 [ 0.75]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 111 0.31 91 [ 0.82]
'Elixir.Bunch.Enum':do_try_each/2 222 0.31 91 [ 0.41]
'Elixir.Membrane.Core.Message':send/4 111 0.32 94 [ 0.85]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 122 0.32 94 [ 0.77]
'Elixir.Bunch.Struct':update_in/3 122 0.35 101 [ 0.83]
gen_server:try_dispatch/4 122 0.35 101 [ 0.83]
'Elixir.Enum':to_list/1 344 0.36 105 [ 0.31]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 477 0.38 109 [ 0.23]
'Elixir.Map':update/4 111 0.38 109 [ 0.98]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 233 0.38 110 [ 0.47]
'Elixir.Enum':split_while_list/3 233 0.38 110 [ 0.47]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 233 0.39 113 [ 0.48]
'Elixir.Membrane.Core.Child.PadModel':update_multi/3 111 0.39 113 [ 1.02]
'Elixir.Enum':map/2 344 0.39 114 [ 0.33]
'Elixir.Bunch.Access':put_in/3 244 0.40 116 [ 0.48]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 244 0.41 119 [ 0.49]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 111 0.41 120 [ 1.08]
'Elixir.Bunch.Enum':chunk_by_prev/3 233 0.42 121 [ 0.52]
'Elixir.Membrane.Core.InputBuffer':do_take/2 122 0.42 123 [ 1.01]
'Elixir.Enumerable':impl_for/1 577 0.43 125 [ 0.22]
'Elixir.Kernel':put_in/3 244 0.43 125 [ 0.51]
'Elixir.Membrane.Core.Element':handle_info/2 122 0.44 127 [ 1.04]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 233 0.45 130 [ 0.56]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 233 0.45 131 [ 0.56]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 111 0.46 135 [ 1.22]
'Elixir.Qex':pop/1 233 0.46 135 [ 0.58]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 122 0.47 136 [ 1.11]
'Elixir.Membrane.Pad.Data':get_and_update/3 477 0.47 137 [ 0.29]
lists:do_flatten/2 444 0.48 138 [ 0.31]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 111 0.48 138 [ 1.24]
'Elixir.Membrane.Core.InputBuffer':store/3 111 0.48 139 [ 1.25]
'Elixir.Membrane.Pad.Data':fetch/2 333 0.49 142 [ 0.43]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 233 0.49 142 [ 0.61]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 233 0.49 143 [ 0.61]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 333 0.49 143 [ 0.43]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 233 0.50 146 [ 0.63]
'Elixir.Enum':reverse/1 699 0.51 147 [ 0.21]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 111 0.51 147 [ 1.32]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 122 0.52 150 [ 1.23]
'Elixir.Membrane.Core.Element.State':get_and_update/3 588 0.52 151 [ 0.26]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 233 0.54 157 [ 0.67]
'Elixir.Qex':push/2 111 0.57 166 [ 1.50]
'Elixir.Enum':drop_while_list/2 466 0.58 169 [ 0.36]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 366 0.59 170 [ 0.46]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 344 0.59 170 [ 0.49]
'Elixir.Kernel':update_in/3 344 0.59 171 [ 0.50]
'Elixir.Bunch.Enum':try_reduce/3 466 0.61 176 [ 0.38]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 222 0.65 188 [ 0.85]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 111 0.65 189 [ 1.70]
'Elixir.Bunch.Access':update_in/3 344 0.65 189 [ 0.55]
'Elixir.Access':'-key/2-fun-0-'/5 122 0.67 194 [ 1.59]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 111 0.67 196 [ 1.77]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 244 0.71 206 [ 0.84]
'Elixir.Membrane.SRTCP.Decryptor':handle_process_list/4 111 0.72 209 [ 1.88]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 344 0.73 212 [ 0.62]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 111 0.76 221 [ 1.99]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 122 0.79 229 [ 1.88]
'Elixir.Enumerable':'impl_for!'/1 577 0.80 233 [ 0.40]
'Elixir.Membrane.SRTCP.Decryptor':handle_process/4 111 0.87 254 [ 2.29]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 233 0.88 256 [ 1.10]
'Elixir.Enum':reduce_while/3 577 0.97 283 [ 0.49]
'Elixir.Membrane.Core.Child.PadModel':'-apply_updates/2-fun-0-'/2 222 1.00 291 [ 1.31]
maps:find/2 1287 1.05 306 [ 0.24]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 122 1.11 322 [ 2.64]
'Elixir.Enumerable':reduce/3 577 1.12 326 [ 0.56]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 1653 1.21 350 [ 0.21]
'Elixir.Enumerable.List':reduce/3 1032 1.22 354 [ 0.34]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 688 1.24 361 [ 0.52]
'Elixir.Bunch.Access':get_in/2 954 1.34 390 [ 0.41]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 1542 1.35 392 [ 0.25]
'Elixir.Membrane.Core.Element.State':fetch/2 954 1.36 394 [ 0.41]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 233 1.84 534 [ 2.29]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 1431 1.97 572 [ 0.40]
'Elixir.Access':get/2 3206 2.03 590 [ 0.18]
'Elixir.Map':get/3 2474 2.10 610 [ 0.25]
'Elixir.Bunch':listify/1 3328 2.36 685 [ 0.21]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 954 2.63 765 [ 0.80]
'Elixir.Access':get_and_update/3 2241 2.68 777 [ 0.35]
'Elixir.Kernel':get_and_update_in/3 2363 2.80 812 [ 0.34]
erlang:send/2 111 2.93 852 [ 7.68]
'Elixir.Access':get/3 3206 3.64 1058 [ 0.33]
'Elixir.Kernel':get_in/2 3195 3.67 1065 [ 0.33]
gen_server:loop/7 122 3.97 1154 [ 9.46]
'Elixir.ExLibSRTP.Native.Nif':unifex_unprotect/4 111 5.06 1471 [ 13.25]
'Elixir.Map':get_and_update/3 2241 7.10 2063 [ 0.92]
----------------------------------------------------------------------------------------- ----- ------- ----- [----------]
Total: 58024 100.00% 29044 [ 0.50]
****** Process <9928.4188.0> -- 0.24 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.Helper.GenServer':noreply/1 2952 0.93 714 [ 0.24]
gen_server:handle_common_reply/8 2952 1.00 773 [ 0.26]
gen_server:try_dispatch/3 2952 1.08 833 [ 0.28]
lists:member/2 2952 1.11 858 [ 0.29]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 2952 1.11 859 [ 0.29]
lists:keymember/3 2952 1.12 864 [ 0.29]
'Elixir.Membrane.Pad':get_corresponding_bin_name/1 2952 1.14 883 [ 0.30]
erlang:setelement/3 2952 1.24 959 [ 0.32]
gen_server:decode_msg/9 2952 1.42 1094 [ 0.37]
'Elixir.Membrane.Core.Bin.LinkingBuffer':'currently_linking?'/2 2952 1.67 1287 [ 0.44]
'Elixir.Keyword':delete_key/2 5904 1.69 1304 [ 0.22]
'Elixir.Bunch':listify/1 5904 1.73 1333 [ 0.23]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 2952 1.87 1442 [ 0.49]
maps:find/2 2952 1.90 1466 [ 0.50]
'Elixir.Enum':'member?'/2 2952 1.95 1503 [ 0.51]
'Elixir.Membrane.Core.Bin.State':fetch/2 2952 1.95 1504 [ 0.51]
'Elixir.Bunch.Access':get_in/2 2952 1.95 1507 [ 0.51]
gen_server:handle_msg/6 2952 2.13 1642 [ 0.56]
'Elixir.Membrane.Pad':get_corresponding_bin_pad/1 2952 2.14 1647 [ 0.56]
'Elixir.Access':get/2 8856 2.39 1842 [ 0.21]
gen_server:try_dispatch/4 2952 2.79 2149 [ 0.73]
'Elixir.Keyword':put/3 2952 2.85 2201 [ 0.75]
'Elixir.Membrane.Core.Message':set_for_pad/2 2952 3.15 2429 [ 0.82]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 2952 3.62 2793 [ 0.95]
'Elixir.Membrane.Core.Bin':handle_info/2 2952 3.98 3071 [ 1.04]
'Elixir.Kernel':get_in/2 8856 4.05 3122 [ 0.35]
'Elixir.Access':get/3 8856 6.38 4918 [ 0.56]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 2952 6.40 4938 [ 1.67]
'Elixir.Membrane.Core.Bin.LinkingBuffer':store_or_send/3 2952 6.49 5008 [ 1.70]
gen_server:loop/7 2952 11.13 8586 [ 2.91]
erlang:send/2 2952 17.62 13591 [ 4.60]
--------------------------------------------------------------- ------ ------- ----- [----------]
Total: 115128 100.00% 77120 [ 0.67]
****** Process <9928.4190.0> -- 0.36 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Enumerable':impl_for/1 975 0.24 282 [ 0.29]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 975 0.25 289 [ 0.30]
'Elixir.Bunch':error_if_nil/2 975 0.25 292 [ 0.30]
'Elixir.Enum':to_list/1 975 0.25 300 [ 0.31]
'Elixir.Membrane.Helper.GenServer':noreply/2 975 0.26 302 [ 0.31]
'Elixir.Membrane.Core.Parent.LifecycleController':get_callback_action_handler/1 975 0.29 343 [ 0.35]
'Elixir.Bunch.Enum':try_reduce/3 975 0.39 457 [ 0.47]
'Elixir.Membrane.Core.Bin.ActionHandler':handle_actions/4 975 0.40 471 [ 0.48]
'Elixir.Enumerable':'impl_for!'/1 975 0.41 482 [ 0.49]
erlang:'++'/2 975 0.41 486 [ 0.50]
'Elixir.Membrane.Core.Parent.ChildLifeController':'-handle_forward/2-fun-0-'/2 975 0.45 526 [ 0.54]
'Elixir.Membrane.Core.Bin.ActionHandler':'-handle_actions/4-fun-0-'/4 975 0.49 578 [ 0.59]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 975 0.50 587 [ 0.60]
'Elixir.Enum':reduce_while/3 975 0.52 618 [ 0.63]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 975 0.54 630 [ 0.65]
'Elixir.Membrane.Core.Parent.ChildLifeController':handle_forward/2 975 0.55 646 [ 0.66]
'Elixir.Bunch.Enum':try_each/2 975 0.56 658 [ 0.67]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 975 0.58 679 [ 0.70]
'Elixir.Enumerable':reduce/3 975 0.65 763 [ 0.78]
'Elixir.Enumerable.List':reduce/3 1950 0.68 801 [ 0.41]
'Elixir.Membrane.Helper.GenServer':noreply/1 3554 0.72 843 [ 0.24]
'Elixir.Membrane.ICE.Bin':handle_other/3 975 0.74 870 [ 0.89]
'Elixir.Membrane.Core.Parent.ChildrenModel':get_child_data/2 975 0.76 891 [ 0.91]
'Elixir.Bunch.Enum':do_try_each/2 1950 0.80 938 [ 0.48]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 3554 0.84 986 [ 0.28]
lists:member/2 3554 0.85 1003 [ 0.28]
lists:keymember/3 3554 0.92 1083 [ 0.30]
'Elixir.Membrane.Pad':get_corresponding_bin_name/1 3554 0.92 1083 [ 0.30]
'Elixir.Membrane.Core.Parent.MessageDispatcher':handle_message/2 975 0.96 1133 [ 1.16]
'Elixir.Membrane.Core.Bin.ActionHandler':handle_action/4 975 0.97 1142 [ 1.17]
erlang:setelement/3 3554 1.02 1195 [ 0.34]
gen_server:handle_common_reply/8 4529 1.03 1211 [ 0.27]
gen_server:try_dispatch/3 4529 1.05 1239 [ 0.27]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 975 1.08 1275 [ 1.31]
'Elixir.Membrane.Core.Parent.ChildLifeController':do_handle_forward/2 975 1.12 1321 [ 1.35]
'Elixir.Membrane.Core.Parent.LifecycleController':handle_other/2 975 1.19 1406 [ 1.44]
'Elixir.Membrane.Core.Bin.LinkingBuffer':'currently_linking?'/2 3554 1.35 1590 [ 0.45]
'Elixir.Keyword':delete_key/2 7108 1.37 1612 [ 0.23]
maps:find/2 3554 1.38 1629 [ 0.46]
'Elixir.Membrane.Core.Parent.LifecycleController':'-handle_other/2-fun-1-'/1 975 1.45 1706 [ 1.75]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 3554 1.53 1796 [ 0.51]
gen_server:decode_msg/9 4529 1.54 1818 [ 0.40]
'Elixir.Membrane.Core.Bin.State':fetch/2 3554 1.60 1882 [ 0.53]
'Elixir.Enum':'member?'/2 3554 1.67 1960 [ 0.55]
'Elixir.Membrane.Pad':get_corresponding_bin_pad/1 3554 1.70 1998 [ 0.56]
'Elixir.Bunch.Access':get_in/2 3554 1.83 2155 [ 0.61]
'Elixir.Bunch':listify/1 8083 1.84 2171 [ 0.27]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 975 2.03 2388 [ 2.45]
gen_server:handle_msg/6 4529 2.09 2458 [ 0.54]
'Elixir.Access':get/2 11637 2.14 2515 [ 0.22]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 3554 2.23 2626 [ 0.74]
'Elixir.Membrane.Core.Message':set_for_pad/2 3554 2.47 2902 [ 0.82]
'Elixir.Keyword':put/3 3554 2.50 2948 [ 0.83]
gen_server:try_dispatch/4 4529 2.74 3231 [ 0.71]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 3554 2.85 3353 [ 0.94]
'Elixir.Kernel':get_in/2 10662 3.50 4122 [ 0.39]
'Elixir.Membrane.Core.Bin':handle_info/2 4529 3.92 4614 [ 1.02]
'Elixir.Access':get/3 11637 4.33 5101 [ 0.44]
'Elixir.Membrane.Core.Bin.LinkingBuffer':store_or_send/3 3554 4.86 5722 [ 1.61]
gen_server:loop/7 4529 10.11 11897 [ 2.63]
erlang:send/2 4529 13.35 15714 [ 3.47]
------------------------------------------------------------------------------- ------ ------- ------ [----------]
Total: 180531 100.00% 117717 [ 0.65]
****** Process <9928.4192.0> -- 0.03 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
gen_server:handle_common_reply/8 975 2.35 263 [ 0.27]
gen_server:try_dispatch/3 975 2.48 277 [ 0.28]
gen_server:decode_msg/9 975 2.89 323 [ 0.33]
'Elixir.Map':get/2 975 2.91 325 [ 0.33]
'Elixir.Map':get/3 975 3.39 379 [ 0.39]
'Elixir.Membrane.DTLS.Handshake':is_hsk_packet/2 975 4.15 464 [ 0.48]
gen_server:handle_msg/6 975 4.76 532 [ 0.55]
gen_server:try_dispatch/4 975 10.85 1213 [ 1.24]
gen_server:loop/7 975 18.76 2098 [ 2.15]
'Elixir.Membrane.ICE.Connector':handle_info/2 975 22.16 2478 [ 2.54]
erlang:send/2 975 25.31 2830 [ 2.90]
------------------------------------------------ ----- ------- ----- [----------]
Total: 10725 100.00% 11182 [ 1.04]
****** Process <9928.4193.0> -- 0.42 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
gen_server:try_dispatch/3 975 0.21 292 [ 0.30]
gen_server:handle_common_reply/8 975 0.21 293 [ 0.30]
'Elixir.ExLibnice':handle_info/2 975 0.73 997 [ 1.02]
gen_server:try_dispatch/4 975 0.83 1131 [ 1.16]
gen_server:decode_msg/9 3320 0.87 1189 [ 0.36]
'Elixir.ExLibnice.Native':send_payload/4 2345 0.93 1264 [ 0.54]
gen_server:reply/2 2345 0.99 1355 [ 0.58]
gen_server:try_handle_call/4 2345 1.76 2407 [ 1.03]
'Elixir.ExLibnice':handle_call/3 2345 1.81 2469 [ 1.05]
gen_server:handle_msg/6 3320 2.24 3053 [ 0.92]
'Elixir.ExLibnice':call/4 2345 2.57 3509 [ 1.50]
erlang:send/2 975 3.72 5080 [ 5.21]
gen:reply/2 2345 3.90 5320 [ 2.27]
gen_server:loop/7 3320 18.12 24741 [ 7.45]
'Elixir.ExLibnice.Native.Nif':unifex_send_payload/4 2345 61.11 83450 [ 35.59]
--------------------------------------------------- ----- ------- ------ [----------]
Total: 31250 100.00% 136550 [ 4.37]
****** Process <9928.4194.0> -- 0.14 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
gen_server:try_dispatch/3 975 0.53 247 [ 0.25]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 975 0.54 250 [ 0.26]
gen_server:handle_common_reply/8 975 0.56 258 [ 0.26]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 975 0.59 272 [ 0.28]
'Elixir.Enumerable':impl_for/1 975 0.59 274 [ 0.28]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 975 0.60 278 [ 0.29]
'Elixir.Membrane.Helper.GenServer':noreply/2 975 0.61 282 [ 0.29]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 975 0.62 288 [ 0.30]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 975 0.63 291 [ 0.30]
gen_server:decode_msg/9 975 0.65 303 [ 0.31]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 975 0.66 307 [ 0.31]
'Elixir.Enum':split_while/2 975 0.67 313 [ 0.32]
'Elixir.Enum':drop_while/2 975 0.68 318 [ 0.33]
lists:flatten/1 975 0.69 319 [ 0.33]
'Elixir.Enum':map/2 975 0.70 323 [ 0.33]
maps:find/2 975 0.73 340 [ 0.35]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 975 0.74 343 [ 0.35]
'Elixir.List':flatten/1 975 0.76 351 [ 0.36]
erlang:'++'/2 975 0.76 352 [ 0.36]
'Elixir.Bunch.Enum':try_reduce/3 975 0.80 372 [ 0.38]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 975 0.82 382 [ 0.39]
'Elixir.Enum':to_list/1 1950 0.97 451 [ 0.23]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 975 0.98 457 [ 0.47]
'Elixir.Enum':reverse/1 1950 1.01 467 [ 0.24]
'Elixir.Enum':reduce_while/3 975 1.02 475 [ 0.49]
lists:reverse/1 975 1.05 487 [ 0.50]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 975 1.07 496 [ 0.51]
'Elixir.Enumerable':'impl_for!'/1 975 1.10 511 [ 0.52]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 975 1.10 513 [ 0.53]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 975 1.11 515 [ 0.53]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 975 1.13 525 [ 0.54]
'Elixir.Membrane.Core.Message':send/4 975 1.13 527 [ 0.54]
'Elixir.Bunch.Enum':try_each/2 975 1.14 528 [ 0.54]
gen_server:handle_msg/6 975 1.17 542 [ 0.56]
'Elixir.Bunch.Access':get_in/2 975 1.17 545 [ 0.56]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 975 1.20 556 [ 0.57]
'Elixir.Bunch.Enum':chunk_by_prev/3 975 1.21 563 [ 0.58]
'Elixir.Membrane.Core.Element.LifecycleController':handle_other/2 975 1.22 567 [ 0.58]
'Elixir.Bunch':listify/1 1950 1.23 571 [ 0.29]
'Elixir.Membrane.Core.Element.State':fetch/2 975 1.24 574 [ 0.59]
'Elixir.Enum':split_while_list/3 975 1.27 590 [ 0.61]
'Elixir.Enumerable':reduce/3 975 1.33 619 [ 0.63]
'Elixir.Access':get/2 2925 1.34 620 [ 0.21]
'Elixir.Bunch.Enum':do_try_each/2 1950 1.60 741 [ 0.38]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 975 1.61 746 [ 0.77]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 975 1.65 767 [ 0.79]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 975 1.65 768 [ 0.79]
gen_server:try_dispatch/4 975 1.70 788 [ 0.81]
'Elixir.Enum':drop_while_list/2 1950 1.70 789 [ 0.40]
'Elixir.Enumerable.List':reduce/3 1950 1.71 793 [ 0.41]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 975 1.84 855 [ 0.88]
'Elixir.Membrane.Core.Element':handle_info/2 975 2.07 960 [ 0.98]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 1950 2.07 963 [ 0.49]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 975 2.08 964 [ 0.99]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 975 2.11 979 [ 1.00]
'Elixir.Kernel':get_in/2 2925 2.27 1054 [ 0.36]
'Elixir.Access':get/3 2925 2.53 1176 [ 0.40]
lists:do_flatten/2 3900 2.55 1184 [ 0.30]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 975 2.57 1193 [ 1.22]
'Elixir.Membrane.Core.Element.LifecycleController':'-handle_other/2-fun-0-'/1 975 2.80 1302 [ 1.34]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 975 3.80 1764 [ 1.81]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 975 4.30 1996 [ 2.05]
erlang:send/2 975 4.84 2246 [ 2.30]
'Elixir.Membrane.ICE.Source':handle_other/3 975 5.78 2683 [ 2.75]
gen_server:loop/7 975 7.67 3564 [ 3.66]
----------------------------------------------------------------------------------------- ----- ------- ----- [----------]
Total: 78975 100.00% 46437 [ 0.59]
****** Process <9928.4195.0> -- 2.00 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.Core.Message':send/4 234 0.02 143 [ 0.61]
erlang:send/2 234 0.07 484 [ 2.07]
gen_server:try_dispatch/3 2345 0.10 634 [ 0.27]
'Elixir.GenServer':whereis/1 2345 0.10 675 [ 0.29]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 2345 0.10 676 [ 0.29]
'Elixir.Keyword':get/2 2345 0.11 691 [ 0.29]
'Elixir.Enum':'-take_random/2-fun-0-'/2 2345 0.11 700 [ 0.30]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 2345 0.11 702 [ 0.30]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 2345 0.11 703 [ 0.30]
'Elixir.GenServer':call/2 2345 0.11 715 [ 0.30]
queue:in/2 2345 0.12 758 [ 0.32]
'Elixir.Membrane.Core.InputBuffer':store/2 2345 0.12 760 [ 0.32]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 2345 0.12 763 [ 0.33]
gen_server:decode_msg/9 2345 0.12 765 [ 0.33]
'Elixir.Membrane.ICE.Sink':'-handle_write_list/4-fun-0-'/2 2345 0.12 770 [ 0.33]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 2345 0.12 788 [ 0.34]
gen_server:handle_common_reply/8 2345 0.12 790 [ 0.34]
'Elixir.Bunch.Enum':try_reduce_while/3 2345 0.12 798 [ 0.34]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 2345 0.12 806 [ 0.34]
gen:call/4 2345 0.13 835 [ 0.36]
'Elixir.Membrane.Helper.GenServer':noreply/2 2345 0.13 835 [ 0.36]
maps:merge/2 2345 0.13 850 [ 0.36]
'Elixir.Membrane.Core.Message':for_pad/1 2345 0.13 863 [ 0.37]
lists:keyfind/3 2345 0.14 929 [ 0.40]
maps:remove/2 2345 0.15 966 [ 0.41]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 2345 0.15 970 [ 0.41]
'Elixir.Enum':to_list/1 4690 0.18 1161 [ 0.25]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 4690 0.18 1205 [ 0.26]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 4690 0.19 1209 [ 0.26]
'Elixir.Bunch.Access':get_and_update_in/3 2345 0.19 1228 [ 0.52]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 4690 0.19 1236 [ 0.26]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 4690 0.19 1257 [ 0.27]
lists:reverse/1 4690 0.19 1265 [ 0.27]
erlang:max/2 4924 0.19 1265 [ 0.26]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 2345 0.20 1271 [ 0.54]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 4690 0.20 1272 [ 0.27]
'Elixir.Membrane.Core.Element.DemandHandler':'-supply_demand/2-fun-0-'/2 2345 0.20 1309 [ 0.56]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 4690 0.20 1315 [ 0.28]
'Elixir.Enum':split_while/2 4690 0.20 1316 [ 0.28]
'Elixir.ExLibnice':send_payload/4 2345 0.20 1322 [ 0.56]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 4690 0.21 1354 [ 0.29]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 2345 0.22 1420 [ 0.61]
gen_server:handle_msg/6 2345 0.22 1424 [ 0.61]
'Elixir.Enum':drop_while/2 4690 0.22 1438 [ 0.31]
'Elixir.MapSet':put/2 2345 0.22 1449 [ 0.62]
'Elixir.Enumerable.MapSet':reduce/3 2345 0.22 1450 [ 0.62]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 4690 0.23 1484 [ 0.32]
'Elixir.Membrane.ICE.Sink':handle_write_list/4 2345 0.23 1491 [ 0.64]
'Elixir.Keyword':get/3 2345 0.23 1514 [ 0.65]
'Elixir.Enum':'-take_random/2-anonymous-4-'/3 2345 0.23 1514 [ 0.65]
erlang:'++'/2 4690 0.24 1560 [ 0.33]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 4690 0.24 1580 [ 0.34]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 2345 0.24 1588 [ 0.68]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 2345 0.25 1601 [ 0.68]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 2345 0.25 1602 [ 0.68]
maps:keys/1 2345 0.25 1617 [ 0.69]
'Elixir.Access':key/2 4690 0.25 1617 [ 0.34]
gen_server:try_dispatch/4 2345 0.25 1646 [ 0.70]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 2345 0.26 1695 [ 0.72]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 4690 0.26 1701 [ 0.36]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 4690 0.27 1745 [ 0.37]
'Elixir.MapSet':to_list/1 2345 0.27 1746 [ 0.74]
'Elixir.Membrane.Core.InputBuffer':store/3 2345 0.27 1788 [ 0.76]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 2345 0.27 1791 [ 0.76]
'Elixir.Qex':push/2 2345 0.28 1801 [ 0.77]
'Elixir.MapSet':delete/2 2345 0.28 1844 [ 0.79]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 4690 0.29 1869 [ 0.40]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 2345 0.29 1869 [ 0.80]
'Elixir.Enum':take_random/2 2345 0.29 1912 [ 0.82]
'Elixir.Enum':map/2 7035 0.30 1938 [ 0.28]
queue:out/1 7035 0.30 1953 [ 0.28]
'Elixir.Membrane.Core.Element':handle_info/2 2345 0.30 1971 [ 0.84]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 2345 0.32 2076 [ 0.89]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 9380 0.32 2110 [ 0.22]
'Elixir.Map':'update!'/3 2345 0.34 2201 [ 0.94]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 2345 0.35 2261 [ 0.96]
'Elixir.Enum':split_while_list/3 4690 0.37 2416 [ 0.52]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 4690 0.39 2524 [ 0.54]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 4690 0.39 2568 [ 0.55]
'Elixir.Bunch.Enum':chunk_by_prev/3 4690 0.41 2659 [ 0.57]
'Elixir.Membrane.ICE.Sink':handle_write/4 2345 0.43 2779 [ 1.19]
'Elixir.GenServer':call/3 2345 0.44 2850 [ 1.22]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 2345 0.45 2936 [ 1.25]
'Elixir.Membrane.Pad.Data':fetch/2 7035 0.46 2976 [ 0.42]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-4-'/1 4690 0.46 3021 [ 0.64]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 2345 0.47 3077 [ 1.31]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 2345 0.48 3132 [ 1.34]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 4690 0.48 3151 [ 0.67]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 4690 0.50 3256 [ 0.69]
'Elixir.Bunch.Access':update_in/3 7035 0.52 3416 [ 0.49]
'Elixir.Membrane.Core.Element.State':get_and_update/3 14070 0.54 3492 [ 0.25]
'Elixir.Enum':drop_while_list/2 9380 0.54 3528 [ 0.38]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 7035 0.55 3571 [ 0.51]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 4690 0.55 3574 [ 0.76]
'Elixir.Enum':reverse/1 16415 0.56 3642 [ 0.22]
'Elixir.Enumerable':impl_for/1 16415 0.56 3645 [ 0.22]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 7035 0.56 3663 [ 0.52]
'Elixir.Kernel':update_in/3 7035 0.58 3807 [ 0.54]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 7035 0.59 3815 [ 0.54]
'Elixir.Membrane.Pad.Data':get_and_update/3 14070 0.60 3939 [ 0.28]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 2345 0.62 4025 [ 1.72]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 9380 0.63 4091 [ 0.44]
'Elixir.Bunch.Enum':try_reduce/3 11725 0.66 4292 [ 0.37]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 9380 0.66 4333 [ 0.46]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 9380 0.67 4380 [ 0.47]
'Elixir.Membrane.Core.InputBuffer':do_take/2 4690 0.68 4462 [ 0.95]
'Elixir.Bunch.Access':put_in/3 9380 0.70 4574 [ 0.49]
'Elixir.Qex':pop/1 7035 0.70 4582 [ 0.65]
erlang:demonitor/2 2345 0.70 4587 [ 1.96]
'Elixir.Bunch.Struct':update_in/3 4690 0.73 4740 [ 1.01]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 7035 0.74 4852 [ 0.69]
'Elixir.Access':'-key/2-fun-0-'/5 4690 0.76 4950 [ 1.06]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 4690 0.79 5124 [ 1.09]
'Elixir.Kernel':put_in/3 9380 0.82 5355 [ 0.57]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 4690 0.83 5417 [ 1.16]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 2345 0.86 5573 [ 2.38]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 4690 0.88 5733 [ 1.22]
erlang:monitor/3 2345 0.92 6003 [ 2.56]
'Elixir.Enum':reduce_while/3 14070 0.97 6295 [ 0.45]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 14070 1.01 6604 [ 0.47]
'Elixir.Enumerable':'impl_for!'/1 16415 1.04 6782 [ 0.41]
maps:find/2 28140 1.13 7379 [ 0.26]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 4690 1.16 7550 [ 1.61]
erlang:send/3 2345 1.21 7909 [ 3.37]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 4690 1.22 7979 [ 1.70]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 9380 1.26 8182 [ 0.87]
'Elixir.Membrane.Core.Element.State':fetch/2 21105 1.36 8844 [ 0.42]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 35175 1.39 9065 [ 0.26]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 42210 1.39 9065 [ 0.21]
'Elixir.Bunch.Access':get_in/2 21105 1.41 9197 [ 0.44]
'Elixir.Enumerable':reduce/3 16415 1.42 9251 [ 0.56]
'Elixir.Enumerable.List':reduce/3 28140 1.55 10084 [ 0.36]
gen:do_call/4 2345 1.93 12576 [ 5.36]
'Elixir.Access':get/2 70350 2.13 13883 [ 0.20]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 35175 2.25 14680 [ 0.42]
'Elixir.Map':get/3 63315 2.29 14897 [ 0.24]
'Elixir.Bunch':listify/1 82075 2.65 17262 [ 0.21]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 21105 2.67 17414 [ 0.83]
'Elixir.Kernel':get_and_update_in/3 60970 2.94 19133 [ 0.31]
'Elixir.Access':get_and_update/3 56280 3.21 20917 [ 0.37]
'Elixir.Access':get/3 70350 3.66 23830 [ 0.34]
'Elixir.Kernel':get_in/2 70350 3.67 23930 [ 0.34]
gen_server:loop/7 2345 3.89 25371 [ 10.82]
'Elixir.Map':get_and_update/3 56280 10.83 70555 [ 1.25]
----------------------------------------------------------------------------------------- ------- ------- ------ [----------]
Total: 1356112 100.00% 651764 [ 0.48]
****** Process <9928.4196.0> -- 6.40 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
lists:split/2 10 0.00 5 [ 0.50]
lists:split/3 41 0.00 11 [ 0.27]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 2346 0.03 619 [ 0.26]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 2346 0.03 627 [ 0.27]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-0-'/1 2346 0.03 639 [ 0.27]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_buffer/5-fun-0-'/2 2346 0.03 653 [ 0.28]
gen_server:try_dispatch/3 2580 0.03 657 [ 0.25]
'Elixir.Enum':'-take_random/2-fun-0-'/2 2346 0.03 659 [ 0.28]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 2346 0.03 662 [ 0.28]
'Elixir.Membrane.Buffer.Metric':from_unit/1 2346 0.03 669 [ 0.29]
lists:flatten/1 2346 0.03 676 [ 0.29]
'Elixir.Keyword':get/2 2580 0.03 713 [ 0.28]
'Elixir.Membrane.Core.InputBuffer':store/2 2346 0.03 715 [ 0.30]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 2346 0.03 719 [ 0.31]
queue:in/2 2346 0.04 732 [ 0.31]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 2346 0.04 736 [ 0.31]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 2346 0.04 743 [ 0.32]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 2580 0.04 760 [ 0.29]
'Elixir.Enum':reduce/3 2346 0.04 792 [ 0.34]
maps:iterator/1 2549 0.04 810 [ 0.32]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 2346 0.04 814 [ 0.35]
'Elixir.Membrane.Core.Child.PadModel':'-update_multi/3-fun-0-'/2 2346 0.04 831 [ 0.35]
'Elixir.List':flatten/1 2346 0.04 861 [ 0.37]
maps:merge/2 2346 0.04 893 [ 0.38]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 2346 0.04 902 [ 0.38]
'Elixir.Membrane.Helper.GenServer':noreply/2 2579 0.04 909 [ 0.35]
gen_server:decode_msg/9 2580 0.04 932 [ 0.36]
'Elixir.Membrane.Funnel':handle_process/4 2346 0.04 933 [ 0.40]
maps:remove/2 2346 0.05 940 [ 0.40]
'Elixir.Membrane.Core.Message':for_pad/1 2580 0.05 940 [ 0.36]
'Elixir.Membrane.Core.Child.PadModel':apply_updates/2 2346 0.05 951 [ 0.41]
gen_server:handle_common_reply/8 2579 0.05 971 [ 0.38]
lists:keyfind/3 2580 0.05 1025 [ 0.40]
'Elixir.Bunch.Enum':try_reduce_while/3 2346 0.05 1037 [ 0.44]
'Elixir.Membrane.Funnel':'-handle_process_list/4-fun-0-'/2 2346 0.05 1051 [ 0.45]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 4692 0.06 1256 [ 0.27]
'Elixir.Membrane.Core.Child.PadModel':'update_multi!'/3 2346 0.06 1259 [ 0.54]
'Elixir.Bunch.Enum':try_each/2 2346 0.06 1268 [ 0.54]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_redemand/2-fun-0-'/2 2346 0.06 1276 [ 0.54]
'Elixir.Enum':'-take_random/2-anonymous-4-'/3 2346 0.07 1364 [ 0.58]
'Elixir.Enumerable.MapSet':reduce/3 2346 0.07 1407 [ 0.60]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 2580 0.07 1438 [ 0.56]
'Elixir.Membrane.Core.Message':send/4 2579 0.07 1471 [ 0.57]
'Elixir.Keyword':get/3 2580 0.07 1493 [ 0.58]
maps:keys/1 2346 0.07 1519 [ 0.65]
'Elixir.MapSet':to_list/1 2346 0.07 1519 [ 0.65]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 2580 0.07 1527 [ 0.59]
'Elixir.MapSet':put/2 2346 0.07 1550 [ 0.66]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 2580 0.08 1571 [ 0.61]
'Elixir.Membrane.Funnel':inputs_data/1 2549 0.08 1617 [ 0.63]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 7241 0.08 1640 [ 0.23]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 2346 0.08 1664 [ 0.71]
'Elixir.Bunch.Enum':do_try_each/2 4692 0.08 1717 [ 0.37]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 2346 0.08 1721 [ 0.73]
'Elixir.MapSet':delete/2 2346 0.09 1776 [ 0.76]
'Elixir.Membrane.Core.InputBuffer':store/3 2346 0.09 1779 [ 0.76]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 2346 0.09 1804 [ 0.77]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 2346 0.09 1832 [ 0.78]
'Elixir.Enum':take_random/2 2346 0.09 1846 [ 0.79]
'Elixir.Enum':split_while/2 7241 0.09 1862 [ 0.26]
'Elixir.Membrane.Core.Element.ActionHandler':handle_redemand/2 2346 0.09 1877 [ 0.80]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 2346 0.09 1881 [ 0.80]
'Elixir.Enum':drop_while/2 7241 0.09 1899 [ 0.26]
gen_server:try_dispatch/4 2580 0.10 2024 [ 0.78]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 2580 0.10 2043 [ 0.79]
erts_internal:map_next/3 2549 0.10 2053 [ 0.81]
'Elixir.Membrane.Funnel':handle_process_list/4 2346 0.10 2065 [ 0.88]
'Elixir.Membrane.Core.Child.PadModel':update_multi/3 2346 0.10 2118 [ 0.90]
'Elixir.Map':update/4 2346 0.10 2118 [ 0.90]
'Elixir.Membrane.Core.Element':handle_info/2 2580 0.10 2123 [ 0.82]
'Elixir.Qex':push/2 2346 0.10 2125 [ 0.91]
'Elixir.Membrane.Core.Child.PadModel':'-apply_updates/2-fun-0-'/2 4692 0.10 2154 [ 0.46]
'Elixir.Map':'update!'/3 2346 0.10 2157 [ 0.92]
'Elixir.Enum':to_list/1 9587 0.11 2191 [ 0.23]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 7241 0.11 2226 [ 0.31]
'Elixir.Membrane.Funnel':handle_demand/5 2549 0.11 2233 [ 0.88]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 2549 0.11 2255 [ 0.88]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 2346 0.11 2271 [ 0.97]
erlang:'++'/2 7241 0.11 2283 [ 0.32]
'Elixir.Bunch.Access':get_and_update_in/3 4926 0.11 2290 [ 0.46]
maps:fold/3 2549 0.11 2366 [ 0.93]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 2346 0.11 2376 [ 1.01]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 4895 0.11 2390 [ 0.49]
gen_server:loop/7 2579 0.13 2730 [ 1.06]
'Elixir.Enum':flat_map/2 2549 0.14 2815 [ 1.10]
'Elixir.Membrane.Core.Element.DemandHandler':handle_redemand/2 4692 0.14 2829 [ 0.60]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 7241 0.14 2843 [ 0.39]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 2346 0.14 2905 [ 1.24]
'Elixir.Membrane.Pad.Data':fetch/2 7038 0.14 2942 [ 0.42]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 7038 0.14 2942 [ 0.42]
lists:reverse/1 9790 0.14 2986 [ 0.31]
lists:do_flatten/2 9384 0.15 3076 [ 0.33]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 4692 0.15 3103 [ 0.66]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 4926 0.16 3295 [ 0.67]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 7241 0.16 3422 [ 0.47]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 2346 0.17 3481 [ 1.48]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 2346 0.19 3859 [ 1.64]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 2346 0.19 3967 [ 1.69]
'Elixir.Bunch.Enum':chunk_by_prev/3 7241 0.21 4332 [ 0.60]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 2580 0.21 4432 [ 1.72]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 7241 0.22 4486 [ 0.62]
'Elixir.Enum':split_while_list/3 9587 0.22 4657 [ 0.49]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-2-'/2 22738 0.22 4663 [ 0.21]
erlang:max/2 25495 0.25 5117 [ 0.20]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 25262 0.26 5387 [ 0.21]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 25262 0.27 5592 [ 0.22]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 25262 0.28 5808 [ 0.23]
'Elixir.Enum':'-flat_map/2-anonymous-5-'/4 25490 0.28 5857 [ 0.23]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 2580 0.28 5860 [ 2.27]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 29979 0.29 6059 [ 0.20]
queue:out/1 27608 0.30 6186 [ 0.22]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 29978 0.30 6320 [ 0.21]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 25262 0.31 6472 [ 0.26]
'Elixir.Membrane.Funnel':'-handle_demand/5-fun-0-'/1 22941 0.31 6533 [ 0.28]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 30391 0.32 6675 [ 0.22]
'Elixir.Membrane.Funnel':'-inputs_data/1-fun-0-'/1 25490 0.33 6917 [ 0.27]
maps:next/1 28039 0.33 6968 [ 0.25]
lists:reverse/2 30608 0.36 7465 [ 0.24]
'Elixir.Enum':map/2 32503 0.36 7500 [ 0.23]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 29979 0.37 7690 [ 0.26]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 37484 0.37 7758 [ 0.21]
'Elixir.Access':key/2 25262 0.38 8003 [ 0.32]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 7241 0.41 8465 [ 1.17]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 25262 0.41 8602 [ 0.34]
'Elixir.Enumerable':impl_for/1 39541 0.46 9561 [ 0.24]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 22939 0.48 9949 [ 0.43]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 50547 0.51 10586 [ 0.21]
'Elixir.Bunch.Enum':try_reduce/3 34849 0.55 11398 [ 0.33]
erlang:send/2 2579 0.55 11550 [ 4.48]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 7241 0.57 11933 [ 1.65]
'Elixir.Membrane.Pad.Data':get_and_update/3 57819 0.58 12087 [ 0.21]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 25262 0.58 12114 [ 0.48]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 29978 0.60 12502 [ 0.42]
'Elixir.Bunch.Access':update_in/3 29954 0.61 12649 [ 0.42]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 29978 0.62 12929 [ 0.43]
'Elixir.Enum':drop_while_list/2 34874 0.65 13564 [ 0.39]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 29954 0.65 13569 [ 0.45]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 27607 0.65 13601 [ 0.49]
'Elixir.Enum':reverse/1 64828 0.66 13664 [ 0.21]
'Elixir.Membrane.Core.Element.State':get_and_update/3 60165 0.66 13831 [ 0.23]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 35083 0.67 13933 [ 0.40]
'Elixir.Kernel':update_in/3 29954 0.72 15082 [ 0.50]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 32324 0.73 15195 [ 0.47]
'Elixir.Enum':reduce_while/3 37195 0.74 15437 [ 0.42]
'Elixir.Enum':'-flat_map/2-fun-1-'/3 25490 0.76 15766 [ 0.62]
maps:fold_1/3 28039 0.77 16070 [ 0.57]
'Elixir.Enumerable':'impl_for!'/1 39541 0.79 16472 [ 0.42]
'Elixir.Qex':pop/1 27608 0.80 16644 [ 0.60]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 27608 0.86 17977 [ 0.65]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 22940 0.87 18215 [ 0.79]
'Elixir.Bunch.Struct':update_in/3 25262 0.88 18312 [ 0.72]
'Elixir.Membrane.Core.InputBuffer':do_take/2 25262 0.97 20132 [ 0.80]
maps:find/2 81950 0.97 20288 [ 0.25]
'Elixir.Bunch.Access':put_in/3 50547 0.99 20638 [ 0.41]
'Elixir.Enumerable':reduce/3 39541 1.00 20872 [ 0.53]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 50547 1.01 21041 [ 0.42]
'Elixir.Access':'-key/2-fun-0-'/5 25262 1.12 23327 [ 0.92]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 29979 1.14 23826 [ 0.79]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 25262 1.20 24897 [ 0.99]
'Elixir.Enumerable.List':reduce/3 76556 1.26 26277 [ 0.34]
'Elixir.Kernel':put_in/3 50547 1.27 26436 [ 0.52]
'Elixir.Bunch.Access':get_in/2 74912 1.46 30371 [ 0.41]
'Elixir.Membrane.Core.Element.State':fetch/2 74912 1.48 30770 [ 0.41]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 178149 1.64 34179 [ 0.19]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 25262 1.76 36564 [ 1.45]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 85398 1.89 39376 [ 0.46]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 50547 1.93 40089 [ 0.79]
'Elixir.Access':get/2 234354 2.13 44322 [ 0.19]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 135077 2.42 50356 [ 0.37]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 132731 2.59 54008 [ 0.41]
gen_server:handle_msg/6 2580 2.77 57629 [ 22.34]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 74912 2.86 59460 [ 0.79]
'Elixir.Bunch':listify/1 320678 3.14 65366 [ 0.20]
'Elixir.Map':get/3 265922 3.16 65777 [ 0.25]
'Elixir.Kernel':get_in/2 231774 3.57 74326 [ 0.32]
'Elixir.Kernel':get_and_update_in/3 263576 3.84 79957 [ 0.30]
'Elixir.Access':get/3 234354 3.98 82948 [ 0.35]
'Elixir.Access':get_and_update/3 238314 4.00 83389 [ 0.35]
'Elixir.Map':get_and_update/3 238314 10.79 224680 [ 0.94]
----------------------------------------------------------------------------------------- ------- ------- ------- [----------]
Total: 5098616 100.00% 2082171 [ 0.41]
****** Process <9928.4197.0> -- 0.47 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.Helper.GenServer':noreply/1 6725 1.04 1597 [ 0.24]
gen_server:handle_common_reply/8 6725 1.13 1733 [ 0.26]
gen_server:try_dispatch/3 6725 1.14 1751 [ 0.26]
lists:member/2 6725 1.15 1763 [ 0.26]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 6725 1.17 1794 [ 0.27]
lists:keymember/3 6725 1.24 1905 [ 0.28]
'Elixir.Membrane.Pad':get_corresponding_bin_name/1 6725 1.29 1984 [ 0.30]
erlang:setelement/3 6725 1.34 2062 [ 0.31]
gen_server:decode_msg/9 6725 1.42 2179 [ 0.32]
maps:find/2 6725 1.70 2621 [ 0.39]
'Elixir.Membrane.Core.Bin.LinkingBuffer':'currently_linking?'/2 6725 1.70 2622 [ 0.39]
'Elixir.Keyword':delete_key/2 13450 1.91 2939 [ 0.22]
'Elixir.Bunch':listify/1 13450 1.95 2996 [ 0.22]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 6725 2.01 3098 [ 0.46]
'Elixir.Membrane.Core.Bin.State':fetch/2 6725 2.11 3242 [ 0.48]
'Elixir.Enum':'member?'/2 6725 2.14 3291 [ 0.49]
'Elixir.Bunch.Access':get_in/2 6725 2.19 3363 [ 0.50]
'Elixir.Membrane.Pad':get_corresponding_bin_pad/1 6725 2.31 3559 [ 0.53]
gen_server:handle_msg/6 6725 2.32 3571 [ 0.53]
'Elixir.Access':get/2 20175 2.72 4178 [ 0.21]
gen_server:try_dispatch/4 6725 2.88 4432 [ 0.66]
'Elixir.Keyword':put/3 6725 3.31 5085 [ 0.76]
'Elixir.Membrane.Core.Message':set_for_pad/2 6725 3.31 5092 [ 0.76]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 6725 3.87 5956 [ 0.89]
'Elixir.Membrane.Core.Bin':handle_info/2 6725 4.42 6796 [ 1.01]
'Elixir.Kernel':get_in/2 20175 4.57 7021 [ 0.35]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 6725 4.72 7258 [ 1.08]
'Elixir.Access':get/3 20175 6.20 9529 [ 0.47]
'Elixir.Membrane.Core.Bin.LinkingBuffer':store_or_send/3 6725 6.50 9999 [ 1.49]
gen_server:loop/7 6725 9.67 14864 [ 2.21]
erlang:send/2 6725 16.59 25508 [ 3.79]
--------------------------------------------------------------- ------ ------- ------ [----------]
Total: 262275 100.00% 153788 [ 0.59]
****** Process <9928.4199.0> -- 0.64 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.EventProtocol.Any':'async?'/1 59 0.01 17 [ 0.29]
'Elixir.Membrane.EventProtocol.Any':'sticky?'/1 59 0.01 17 [ 0.29]
'Elixir.Membrane.RTP.SSRCRouter':'-handle_event/4-fun-0-'/3 39 0.01 19 [ 0.49]
'Elixir.Membrane.Core.Element.ActionHandler':handle_event/3 59 0.01 20 [ 0.34]
'Elixir.Enum':filter/2 39 0.01 20 [ 0.51]
'Elixir.Membrane.RTP.SSRCRouter':'-handle_event/4-fun-1-'/2 39 0.01 20 [ 0.51]
'Elixir.Membrane.Core.Element.EventController':exec_handle_event/3 59 0.01 23 [ 0.39]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 88 0.01 27 [ 0.31]
'Elixir.Membrane.Core.Element.EventController':'buffers_before_event_present?'/1 39 0.01 28 [ 0.72]
'Elixir.Membrane.Core.Element.EventController':handle_special_event/3 59 0.01 28 [ 0.47]
'Elixir.Membrane.Event':'async?'/1 59 0.01 28 [ 0.47]
'Elixir.Membrane.Core.Child.PadModel':'assert_instance!'/2 59 0.01 29 [ 0.49]
'Elixir.Membrane.Core.Element.EventController':check_sync/2 59 0.01 29 [ 0.49]
'Elixir.Membrane.Event':'event?'/1 59 0.01 31 [ 0.53]
'Elixir.Enum':'-flat_map_reduce/3-fun-1-'/3 39 0.02 32 [ 0.82]
'Elixir.Membrane.RTP.SSRCRouter':'-handle_demand/5-fun-0-'/2 88 0.02 36 [ 0.41]
'Elixir.Membrane.Event':'sticky?'/1 59 0.02 43 [ 0.73]
'Elixir.Enum':flat_map_reduce/3 39 0.02 47 [ 1.21]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 88 0.02 48 [ 0.55]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 88 0.02 51 [ 0.58]
'Elixir.Enum':filter_list/2 78 0.03 53 [ 0.68]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 88 0.03 54 [ 0.61]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 88 0.03 54 [ 0.61]
'Elixir.Membrane.EventProtocol':'async?'/1 59 0.03 55 [ 0.93]
'Elixir.Membrane.EventProtocol':'impl_for!'/1 118 0.03 55 [ 0.47]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-6-'/3 59 0.03 57 [ 0.97]
'Elixir.Membrane.EventProtocol':impl_for/1 177 0.03 60 [ 0.34]
'Elixir.Membrane.Core.Child.PadModel':update_data/4 88 0.03 61 [ 0.69]
'Elixir.Membrane.Core.Element.EventController':'-do_exec_handle_event/4-fun-0-'/1 59 0.03 68 [ 1.15]
'Elixir.Membrane.Core.Element.DemandHandler':'-update_demand/3-fun-0-'/2 88 0.04 77 [ 0.88]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 88 0.04 79 [ 0.90]
'Elixir.Membrane.Core.Element.EventController':exec_handle_event/4 59 0.04 82 [ 1.39]
'Elixir.Membrane.Core.Element.EventController':do_exec_handle_event/4 59 0.04 83 [ 1.41]
'Elixir.Membrane.RTP.SSRCRouter':handle_demand/5 88 0.04 91 [ 1.03]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 88 0.05 96 [ 1.09]
'Elixir.Membrane.Core.Element.ActionHandler':send_event/3 59 0.05 106 [ 1.80]
'Elixir.Membrane.Core.Element.EventController':handle_event/3 59 0.05 108 [ 1.83]
'Elixir.Membrane.EventProtocol':'sticky?'/1 59 0.05 112 [ 1.90]
'Elixir.Membrane.RTP.SSRCRouter':handle_event/4 59 0.06 115 [ 1.95]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 88 0.08 162 [ 1.84]
'Elixir.Membrane.Buffer.Metric':from_unit/1 874 0.11 231 [ 0.26]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 874 0.11 234 [ 0.27]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 874 0.11 235 [ 0.27]
'Elixir.Membrane.Core.InputBuffer':store/2 874 0.12 243 [ 0.28]
lists:flatten/1 874 0.12 251 [ 0.29]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 874 0.12 253 [ 0.29]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_buffer/5-fun-0-'/2 874 0.12 253 [ 0.29]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 874 0.12 253 [ 0.29]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 874 0.12 254 [ 0.29]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 962 0.12 255 [ 0.27]
erlang:max/2 1049 0.12 257 [ 0.24]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 874 0.12 259 [ 0.30]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 962 0.13 264 [ 0.27]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 874 0.13 266 [ 0.30]
queue:in/2 874 0.13 268 [ 0.31]
gen_server:try_dispatch/3 1021 0.13 276 [ 0.27]
'Elixir.Keyword':get/2 1021 0.13 279 [ 0.27]
'Elixir.Enum':reduce/3 874 0.13 279 [ 0.32]
'Elixir.List':flatten/1 874 0.14 282 [ 0.32]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 962 0.14 292 [ 0.30]
'Elixir.Membrane.RTP.SSRCRouter':'-handle_process_list/4-fun-0-'/2 874 0.14 301 [ 0.34]
maps:merge/2 933 0.15 316 [ 0.34]
gen_server:handle_common_reply/8 1021 0.15 318 [ 0.31]
'Elixir.Membrane.Helper.GenServer':noreply/2 1021 0.16 326 [ 0.32]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 1256 0.16 328 [ 0.26]
'Elixir.Bunch.Enum':try_reduce_while/3 874 0.16 331 [ 0.38]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 913 0.17 351 [ 0.38]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 962 0.17 355 [ 0.37]
'Elixir.Membrane.Core.Child.PadModel':apply_updates/2 874 0.18 364 [ 0.42]
'Elixir.Membrane.Core.Child.PadModel':'-update_multi/3-fun-0-'/2 874 0.18 374 [ 0.43]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 962 0.18 378 [ 0.39]
'Elixir.Access':key/2 962 0.18 381 [ 0.40]
'Elixir.Membrane.RTP.SSRCRouter':'waiting_for_linking?'/2 913 0.19 386 [ 0.42]
'Elixir.Membrane.Core.Message':for_pad/1 1021 0.19 396 [ 0.39]
gen_server:decode_msg/9 1021 0.20 410 [ 0.40]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 1895 0.21 429 [ 0.23]
lists:keyfind/3 1021 0.21 436 [ 0.43]
'Elixir.Membrane.Core.Child.PadModel':'update_multi!'/3 874 0.22 452 [ 0.52]
'Elixir.Bunch.Enum':try_each/2 874 0.22 459 [ 0.53]
'Elixir.Enum':split_while/2 1895 0.23 468 [ 0.25]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 1748 0.23 470 [ 0.27]
queue:out/1 1836 0.23 473 [ 0.26]
'Elixir.Enum':drop_while/2 1895 0.23 481 [ 0.25]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 1895 0.23 487 [ 0.26]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 1895 0.24 494 [ 0.26]
'Elixir.Membrane.RTP.SSRCRouter':maybe_handle_new_stream/4 874 0.25 510 [ 0.58]
lists:reverse/1 1934 0.25 511 [ 0.26]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 1021 0.25 514 [ 0.50]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 1836 0.25 517 [ 0.28]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 1895 0.26 547 [ 0.29]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 962 0.28 579 [ 0.60]
'Elixir.Membrane.RTP.SSRCRouter':handle_process_list/4 874 0.28 588 [ 0.67]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 874 0.28 591 [ 0.68]
'Elixir.Bunch.Access':get_and_update_in/3 1050 0.29 596 [ 0.57]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 874 0.29 597 [ 0.68]
'Elixir.Bunch.Enum':do_try_each/2 1748 0.29 598 [ 0.34]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 874 0.29 607 [ 0.69]
'Elixir.Membrane.Core.Message':send/4 1020 0.29 611 [ 0.60]
gen_server:handle_msg/6 1021 0.30 614 [ 0.60]
'Elixir.Enum':to_list/1 2769 0.30 627 [ 0.23]
'Elixir.Enum':map/2 2710 0.32 664 [ 0.25]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 962 0.32 667 [ 0.69]
'Elixir.Qex':push/2 874 0.32 673 [ 0.77]
'Elixir.Membrane.Core.InputBuffer':store/3 874 0.32 674 [ 0.77]
'Elixir.Keyword':get/3 1021 0.33 678 [ 0.66]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 874 0.33 682 [ 0.78]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 874 0.33 692 [ 0.79]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 1895 0.33 695 [ 0.37]
'Elixir.Membrane.RTP.SSRCRouter':maybe_add_to_linking_buffer/4 913 0.34 696 [ 0.76]
gen_server:try_dispatch/4 1021 0.34 708 [ 0.69]
'Elixir.Bunch.Struct':update_in/3 962 0.37 762 [ 0.79]
'Elixir.Membrane.Core.Child.PadModel':update_multi/3 874 0.37 777 [ 0.89]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 874 0.39 801 [ 0.92]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 874 0.39 806 [ 0.92]
erlang:'++'/2 2769 0.40 824 [ 0.30]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 3819 0.40 830 [ 0.22]
'Elixir.Bunch.Access':put_in/3 1836 0.40 840 [ 0.46]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 1836 0.41 849 [ 0.46]
'Elixir.Membrane.Core.Element':handle_info/2 1021 0.41 853 [ 0.84]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 1895 0.41 859 [ 0.45]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 962 0.42 866 [ 0.90]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 1895 0.42 872 [ 0.46]
'Elixir.Membrane.Core.InputBuffer':do_take/2 962 0.43 885 [ 0.92]
'Elixir.Enum':split_while_list/3 1895 0.43 892 [ 0.47]
'Elixir.Membrane.Pad.Data':get_and_update/3 3760 0.43 894 [ 0.24]
'Elixir.Bunch.Enum':chunk_by_prev/3 1895 0.43 895 [ 0.47]
'Elixir.Access':'-key/2-fun-0-'/5 962 0.45 940 [ 0.98]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 1895 0.46 965 [ 0.51]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 1021 0.47 968 [ 0.95]
'Elixir.Kernel':put_in/3 1836 0.48 997 [ 0.54]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 874 0.48 1005 [ 1.15]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 1895 0.49 1021 [ 0.54]
'Elixir.Map':update/4 874 0.50 1034 [ 1.18]
'Elixir.Membrane.Core.Element.State':get_and_update/3 4634 0.51 1056 [ 0.23]
lists:do_flatten/2 3496 0.51 1057 [ 0.30]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 2622 0.51 1057 [ 0.40]
'Elixir.Membrane.Pad.Data':fetch/2 2622 0.51 1061 [ 0.40]
'Elixir.Qex':pop/1 1836 0.52 1073 [ 0.58]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 1748 0.52 1078 [ 0.62]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 962 0.52 1085 [ 1.13]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 1836 0.53 1094 [ 0.60]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 1895 0.53 1094 [ 0.58]
'Elixir.Enumerable':impl_for/1 4644 0.53 1100 [ 0.24]
'Elixir.Membrane.Core.Child.PadModel':'-apply_updates/2-fun-0-'/2 1748 0.55 1152 [ 0.66]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 874 0.56 1168 [ 1.34]
'Elixir.Bunch.Access':update_in/3 2710 0.57 1179 [ 0.44]
'Elixir.Membrane.RTP.SSRCRouter':handle_process/4 874 0.57 1186 [ 1.36]
'Elixir.Enum':reverse/1 5626 0.57 1187 [ 0.21]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 1895 0.60 1242 [ 0.66]
'Elixir.Bunch.Enum':try_reduce/3 3731 0.61 1258 [ 0.34]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 3004 0.61 1267 [ 0.42]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 2769 0.63 1307 [ 0.47]
'Elixir.Enum':drop_while_list/2 3790 0.64 1331 [ 0.35]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 2710 0.64 1335 [ 0.49]
'Elixir.Kernel':update_in/3 2710 0.65 1359 [ 0.50]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 874 0.67 1392 [ 1.59]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 874 0.70 1457 [ 1.67]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 1836 0.74 1537 [ 0.84]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 962 0.76 1571 [ 1.63]
'Elixir.Enumerable':'impl_for!'/1 4644 0.96 1995 [ 0.43]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 1895 0.99 2063 [ 1.09]
'Elixir.Enum':reduce_while/3 4605 1.01 2091 [ 0.45]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 1021 1.10 2280 [ 2.23]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 5420 1.18 2443 [ 0.45]
'Elixir.Enumerable':reduce/3 4644 1.22 2540 [ 0.55]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 13028 1.24 2584 [ 0.20]
maps:find/2 10339 1.32 2744 [ 0.27]
'Elixir.Enumerable.List':reduce/3 8326 1.33 2759 [ 0.33]
'Elixir.Bunch.Access':get_in/2 7697 1.52 3150 [ 0.41]
'Elixir.Membrane.Core.Element.State':fetch/2 7697 1.56 3231 [ 0.42]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 1895 1.64 3404 [ 1.80]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 12390 2.02 4193 [ 0.34]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 11457 2.28 4731 [ 0.41]
'Elixir.Map':get/3 19498 2.31 4809 [ 0.25]
'Elixir.Access':get/2 25889 2.36 4906 [ 0.19]
erlang:send/2 1020 2.55 5306 [ 5.20]
'Elixir.Bunch':listify/1 26586 2.74 5701 [ 0.21]
'Elixir.Kernel':get_and_update_in/3 18624 2.84 5899 [ 0.32]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 7697 2.90 6017 [ 0.78]
'Elixir.Access':get_and_update/3 17662 3.17 6590 [ 0.37]
gen_server:loop/7 1021 3.97 8247 [ 8.08]
'Elixir.Kernel':get_in/2 25713 4.06 8429 [ 0.33]
'Elixir.Access':get/3 25889 4.30 8929 [ 0.34]
'Elixir.Map':get_and_update/3 17662 8.56 17784 [ 1.01]
----------------------------------------------------------------------------------------- ------ ------- ------ [----------]
Total: 466037 100.00% 207748 [ 0.45]
****** Process <9928.4200.0> -- 0.77 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-2-'/2 101 0.01 30 [ 0.30]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-0-'/1 101 0.01 30 [ 0.30]
'Elixir.Enum':'-take_random/2-fun-0-'/2 101 0.01 33 [ 0.33]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_redemand/2-fun-0-'/2 101 0.02 59 [ 0.58]
'Elixir.Enumerable.MapSet':reduce/3 101 0.02 60 [ 0.59]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 188 0.03 67 [ 0.36]
maps:keys/1 101 0.03 68 [ 0.67]
maps:remove/2 101 0.03 71 [ 0.70]
'Elixir.MapSet':put/2 101 0.03 72 [ 0.71]
'Elixir.Enum':'-take_random/2-anonymous-4-'/3 101 0.03 78 [ 0.77]
'Elixir.Membrane.RTP.Parser':handle_demand/5 188 0.03 78 [ 0.41]
'Elixir.MapSet':to_list/1 101 0.03 80 [ 0.79]
'Elixir.Enum':take_random/2 101 0.03 82 [ 0.81]
'Elixir.MapSet':delete/2 101 0.03 87 [ 0.86]
'Elixir.Membrane.Core.Element.ActionHandler':handle_redemand/2 101 0.04 94 [ 0.93]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 188 0.04 102 [ 0.54]
'Elixir.Map':'update!'/3 101 0.04 103 [ 1.02]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 188 0.05 116 [ 0.62]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 188 0.05 117 [ 0.62]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 188 0.05 123 [ 0.65]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 188 0.06 147 [ 0.78]
'Elixir.Membrane.Core.Element.DemandHandler':handle_redemand/2 202 0.06 155 [ 0.77]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 188 0.08 208 [ 1.11]
'Elixir.Membrane.Buffer.Metric':from_unit/1 874 0.10 255 [ 0.29]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_buffer/5-fun-0-'/2 874 0.11 266 [ 0.30]
lists:flatten/1 975 0.12 299 [ 0.31]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 975 0.12 301 [ 0.31]
'Elixir.Enum':reduce/3 874 0.12 313 [ 0.36]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 975 0.13 314 [ 0.32]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 188 0.13 315 [ 1.68]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 975 0.13 315 [ 0.32]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 975 0.13 318 [ 0.33]
'Elixir.Membrane.Core.InputBuffer':store/2 975 0.13 321 [ 0.33]
erlang:max/2 1163 0.13 321 [ 0.28]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 975 0.13 324 [ 0.33]
'Elixir.Keyword':get/2 1062 0.13 326 [ 0.31]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 975 0.13 329 [ 0.34]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 1163 0.13 332 [ 0.29]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 975 0.13 333 [ 0.34]
'Elixir.Map':take/2 874 0.13 333 [ 0.38]
queue:in/2 975 0.13 335 [ 0.34]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 1163 0.14 341 [ 0.29]
'Elixir.Membrane.RTP.Utils':strip_padding/2 874 0.14 345 [ 0.39]
'Elixir.List':flatten/1 975 0.14 347 [ 0.36]
maps:merge/2 975 0.14 358 [ 0.37]
'Elixir.Membrane.Helper.GenServer':noreply/2 1062 0.14 359 [ 0.34]
'Elixir.Membrane.Core.Child.PadModel':'-update_multi/3-fun-0-'/2 874 0.14 361 [ 0.41]
'Elixir.Bunch.Enum':try_reduce_while/3 975 0.14 364 [ 0.37]
'Elixir.Membrane.RTP.Packet':'-parse/2-lc$^0/1-0-'/1 874 0.14 364 [ 0.42]
'Elixir.Membrane.RTP.Parser':'-handle_process_list/4-fun-0-'/2 975 0.14 364 [ 0.37]
gen_server:handle_common_reply/8 1062 0.15 367 [ 0.35]
gen_server:decode_msg/9 1062 0.15 382 [ 0.36]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 975 0.15 384 [ 0.39]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 1163 0.15 389 [ 0.33]
gen_server:try_dispatch/3 1062 0.16 404 [ 0.38]
'Elixir.Membrane.Core.Child.PadModel':apply_updates/2 874 0.16 405 [ 0.46]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 1539 0.17 417 [ 0.27]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 1163 0.17 418 [ 0.36]
'Elixir.Membrane.Core.Message':for_pad/1 1062 0.17 424 [ 0.40]
'Elixir.Access':key/2 1163 0.19 472 [ 0.41]
lists:keyfind/3 1062 0.20 501 [ 0.47]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 1163 0.20 502 [ 0.43]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 2138 0.20 503 [ 0.24]
'Elixir.Membrane.Core.Child.PadModel':'update_multi!'/3 874 0.20 510 [ 0.58]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 1849 0.21 527 [ 0.29]
'Elixir.Membrane.RTP.Packet':identify/1 975 0.22 541 [ 0.55]
'Elixir.Bunch.Enum':try_each/2 975 0.22 546 [ 0.56]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 2326 0.22 562 [ 0.24]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 2239 0.23 568 [ 0.25]
'Elixir.Membrane.Core.Message':send/4 975 0.23 572 [ 0.59]
lists:reverse/1 2138 0.23 578 [ 0.27]
'Elixir.Enum':split_while/2 2138 0.23 580 [ 0.27]
'Elixir.Enum':drop_while/2 2138 0.24 607 [ 0.28]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 1163 0.24 608 [ 0.52]
queue:out/1 2138 0.25 621 [ 0.29]
'Elixir.Bunch.Access':get_and_update_in/3 1163 0.25 622 [ 0.53]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 2239 0.25 632 [ 0.28]
'Elixir.Membrane.RTP.Packet':parse_header_extension/2 874 0.26 649 [ 0.74]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 2138 0.26 655 [ 0.31]
'Elixir.Keyword':get/3 1062 0.27 671 [ 0.63]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 975 0.27 685 [ 0.70]
gen_server:handle_msg/6 1062 0.28 694 [ 0.65]
erlang:'++'/2 2138 0.28 698 [ 0.33]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 975 0.28 704 [ 0.72]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 975 0.29 716 [ 0.73]
'Elixir.Membrane.RTP.Parser':handle_process_list/4 975 0.29 729 [ 0.75]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 975 0.29 739 [ 0.76]
'Elixir.Enum':to_list/1 3113 0.30 750 [ 0.24]
gen_server:try_dispatch/4 1062 0.30 759 [ 0.71]
'Elixir.Bunch.Enum':do_try_each/2 1950 0.31 768 [ 0.39]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 1163 0.32 791 [ 0.68]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 975 0.33 817 [ 0.84]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 2138 0.33 824 [ 0.39]
'Elixir.Enum':map/2 3113 0.34 857 [ 0.28]
'Elixir.Membrane.Core.Child.PadModel':update_multi/3 874 0.35 874 [ 1.00]
'Elixir.Qex':push/2 975 0.35 886 [ 0.91]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 975 0.37 934 [ 0.96]
'Elixir.Membrane.Core.InputBuffer':store/3 975 0.37 936 [ 0.96]
'Elixir.Membrane.Core.Element':handle_info/2 1062 0.37 939 [ 0.88]
'Elixir.Map':update/4 874 0.38 946 [ 1.08]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 4464 0.38 962 [ 0.22]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 975 0.39 976 [ 1.00]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 1163 0.40 1007 [ 0.87]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 1264 0.41 1033 [ 0.82]
'Elixir.Membrane.Core.Child.PadModel':'-apply_updates/2-fun-0-'/2 1748 0.43 1081 [ 0.62]
'Elixir.Membrane.Pad.Data':get_and_update/3 4464 0.43 1081 [ 0.24]
'Elixir.Bunch.Struct':update_in/3 1163 0.43 1084 [ 0.93]
'Elixir.Enum':split_while_list/3 2239 0.43 1089 [ 0.49]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 2239 0.44 1098 [ 0.49]
'Elixir.Bunch.Access':put_in/3 2326 0.44 1100 [ 0.47]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 1062 0.44 1102 [ 1.04]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 2239 0.44 1106 [ 0.49]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 2326 0.46 1144 [ 0.49]
'Elixir.Bunch.Enum':chunk_by_prev/3 2138 0.46 1145 [ 0.54]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 2138 0.46 1150 [ 0.54]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 2622 0.46 1164 [ 0.44]
'Elixir.Enumerable':impl_for/1 5352 0.47 1182 [ 0.22]
lists:do_flatten/2 3900 0.48 1204 [ 0.31]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 2239 0.48 1205 [ 0.54]
'Elixir.Membrane.Core.InputBuffer':do_take/2 1163 0.48 1214 [ 1.04]
'Elixir.Access':'-key/2-fun-0-'/5 1163 0.48 1215 [ 1.04]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 975 0.48 1217 [ 1.25]
'Elixir.Kernel':put_in/3 2326 0.50 1252 [ 0.54]
'Elixir.Qex':pop/1 2138 0.50 1262 [ 0.59]
'Elixir.Membrane.Pad.Data':fetch/2 2925 0.51 1274 [ 0.44]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 2138 0.52 1307 [ 0.61]
'Elixir.Membrane.Core.Element.State':get_and_update/3 5338 0.55 1379 [ 0.26]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 2138 0.56 1398 [ 0.65]
'Elixir.Bunch.Access':update_in/3 3012 0.56 1402 [ 0.47]
maps:from_list/1 874 0.56 1406 [ 1.61]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 975 0.57 1422 [ 1.46]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 1163 0.57 1423 [ 1.22]
'Elixir.Enum':reverse/1 6515 0.57 1431 [ 0.22]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 1950 0.58 1457 [ 0.75]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 3489 0.59 1477 [ 0.42]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 3012 0.62 1563 [ 0.52]
'Elixir.Bunch.Enum':try_reduce/3 4276 0.63 1573 [ 0.37]
'Elixir.Kernel':update_in/3 3012 0.63 1577 [ 0.52]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 3214 0.63 1578 [ 0.49]
'Elixir.Enum':drop_while_list/2 4276 0.63 1590 [ 0.37]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 2239 0.64 1617 [ 0.72]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 975 0.67 1683 [ 1.73]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 975 0.73 1824 [ 1.87]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 1163 0.79 1976 [ 1.70]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 2326 0.79 1987 [ 0.85]
'Elixir.Enum':reduce_while/3 5251 0.90 2264 [ 0.43]
'Elixir.Enumerable':'impl_for!'/1 5352 0.92 2310 [ 0.43]
'Elixir.Map':take/3 6992 0.93 2344 [ 0.34]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 1062 0.98 2473 [ 2.33]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 2138 1.10 2756 [ 1.29]
'Elixir.Membrane.RTP.Parser':handle_process/4 975 1.10 2767 [ 2.84]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 6226 1.13 2836 [ 0.46]
'Elixir.Membrane.RTP.Packet':parse/2 874 1.13 2842 [ 3.25]
'Elixir.Enumerable':reduce/3 5352 1.15 2896 [ 0.54]
maps:find/2 11853 1.19 2995 [ 0.25]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 15140 1.22 3062 [ 0.20]
'Elixir.Enumerable.List':reduce/3 9642 1.31 3297 [ 0.34]
'Elixir.Bunch.Access':get_in/2 8928 1.48 3722 [ 0.42]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 14266 1.50 3777 [ 0.26]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 2138 1.51 3800 [ 1.78]
'Elixir.Membrane.Core.Element.State':fetch/2 8928 1.55 3901 [ 0.44]
erlang:send/2 975 2.08 5233 [ 5.37]
'Elixir.Map':get/3 22616 2.14 5368 [ 0.24]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 13392 2.14 5385 [ 0.40]
'Elixir.Access':get/2 29897 2.28 5730 [ 0.19]
'Elixir.Bunch':listify/1 30959 2.68 6718 [ 0.22]
'Elixir.Kernel':get_and_update_in/3 21641 2.76 6941 [ 0.32]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 8928 2.84 7136 [ 0.80]
'Elixir.Access':get_and_update/3 20478 3.07 7706 [ 0.38]
'Elixir.Kernel':get_in/2 29709 4.04 10152 [ 0.34]
'Elixir.Access':get/3 29897 4.09 10261 [ 0.34]
gen_server:loop/7 1062 4.16 10446 [ 9.84]
'Elixir.Map':get_and_update/3 20478 7.96 19994 [ 0.98]
----------------------------------------------------------------------------------------- ------ ------- ------ [----------]
Total: 543865 100.00% 251105 [ 0.46]
****** Process <9928.4201.0> -- 0.01 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 2 0.00 0 [ 0.00]
'Elixir.Membrane.SRTP.Encryptor':handle_demand/5 2 0.02 1 [ 0.50]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 2 0.02 1 [ 0.50]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 2 0.02 1 [ 0.50]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 2 0.02 1 [ 0.50]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 2 0.02 1 [ 0.50]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 2 0.02 1 [ 0.50]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 2 0.04 2 [ 1.00]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 2 0.06 3 [ 1.50]
'Elixir.Keyword':get/2 22 0.11 5 [ 0.23]
lists:flatten/1 20 0.11 5 [ 0.25]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 20 0.11 5 [ 0.25]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 20 0.11 5 [ 0.25]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 22 0.11 5 [ 0.23]
queue:in/2 20 0.13 6 [ 0.30]
maps:merge/2 20 0.13 6 [ 0.30]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_buffer/5-fun-0-'/2 20 0.13 6 [ 0.30]
'Elixir.Membrane.SRTP.Encryptor':'-handle_process_list/4-fun-0-'/2 20 0.13 6 [ 0.30]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 26 0.13 6 [ 0.23]
'Elixir.Membrane.Core.Message':for_pad/1 22 0.13 6 [ 0.27]
'Elixir.List':flatten/1 20 0.13 6 [ 0.30]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 20 0.13 6 [ 0.30]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 20 0.13 6 [ 0.30]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 20 0.13 6 [ 0.30]
erlang:max/2 22 0.13 6 [ 0.27]
'Elixir.Membrane.Buffer.Metric':from_unit/1 20 0.13 6 [ 0.30]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 20 0.13 6 [ 0.30]
gen_server:try_dispatch/3 22 0.13 6 [ 0.27]
'Elixir.Access':key/2 22 0.15 7 [ 0.32]
lists:keyfind/3 22 0.15 7 [ 0.32]
'Elixir.Membrane.Core.Child.PadModel':'-update_multi/3-fun-0-'/2 20 0.15 7 [ 0.35]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 22 0.15 7 [ 0.32]
'Elixir.Membrane.Helper.GenServer':noreply/2 22 0.15 7 [ 0.32]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 20 0.15 7 [ 0.35]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 22 0.15 7 [ 0.32]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 22 0.15 7 [ 0.32]
'Elixir.Membrane.Core.InputBuffer':store/2 20 0.15 7 [ 0.35]
'Elixir.Bunch.Enum':try_reduce_while/3 20 0.15 7 [ 0.35]
'Elixir.Enum':reduce/3 20 0.15 7 [ 0.35]
gen_server:decode_msg/9 22 0.15 7 [ 0.32]
gen_server:handle_common_reply/8 22 0.15 7 [ 0.32]
'Elixir.ExLibSRTP':protect_rtcp/2 20 0.15 7 [ 0.35]
'Elixir.ExLibSRTP':protect_rtcp/3 20 0.15 7 [ 0.35]
'Elixir.Membrane.Core.Child.PadModel':apply_updates/2 20 0.17 8 [ 0.40]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 22 0.17 8 [ 0.36]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 42 0.19 9 [ 0.21]
'Elixir.Enum':split_while/2 42 0.19 9 [ 0.21]
'Elixir.ExLibSRTP.Native':protect/5 20 0.19 9 [ 0.45]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 42 0.19 9 [ 0.21]
queue:out/1 42 0.21 10 [ 0.24]
'Elixir.Keyword':get/3 22 0.21 10 [ 0.45]
lists:reverse/1 42 0.21 10 [ 0.24]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 42 0.21 10 [ 0.24]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 44 0.21 10 [ 0.23]
'Elixir.Membrane.Core.Message':send/4 20 0.21 10 [ 0.50]
'Elixir.Bunch.Enum':try_each/2 20 0.21 10 [ 0.50]
'Elixir.Enum':drop_while/2 42 0.21 10 [ 0.24]
'Elixir.Membrane.RTP.Packet':identify/1 20 0.21 10 [ 0.50]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 22 0.21 10 [ 0.45]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 42 0.23 11 [ 0.26]
'Elixir.Membrane.SRTP.Encryptor':handle_process_list/4 20 0.23 11 [ 0.55]
'Elixir.Membrane.Core.Child.PadModel':'update_multi!'/3 20 0.23 11 [ 0.55]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 40 0.23 11 [ 0.28]
'Elixir.Bunch.Access':get_and_update_in/3 22 0.25 12 [ 0.55]
erlang:'++'/2 42 0.25 12 [ 0.29]
gen_server:handle_msg/6 22 0.25 12 [ 0.55]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 42 0.28 13 [ 0.31]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 20 0.28 13 [ 0.65]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 20 0.28 13 [ 0.65]
'Elixir.Bunch.Enum':do_try_each/2 40 0.28 13 [ 0.33]
'Elixir.Enum':to_list/1 62 0.28 13 [ 0.21]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 22 0.30 14 [ 0.64]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 20 0.30 14 [ 0.70]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 20 0.30 14 [ 0.70]
gen_server:try_dispatch/4 22 0.30 14 [ 0.64]
'Elixir.Membrane.Core.Element':handle_info/2 22 0.32 15 [ 0.68]
'Elixir.Enum':map/2 62 0.32 15 [ 0.24]
'Elixir.Qex':push/2 20 0.32 15 [ 0.75]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 20 0.34 16 [ 0.80]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 42 0.36 17 [ 0.40]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 42 0.36 17 [ 0.40]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 22 0.36 17 [ 0.77]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 86 0.36 17 [ 0.20]
'Elixir.Membrane.Core.Child.PadModel':update_multi/3 20 0.36 17 [ 0.85]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 22 0.36 17 [ 0.77]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 20 0.36 17 [ 0.85]
'Elixir.Membrane.Core.InputBuffer':store/3 20 0.36 17 [ 0.85]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 42 0.36 17 [ 0.40]
'Elixir.Map':update/4 20 0.36 17 [ 0.85]
'Elixir.Membrane.Core.Child.PadModel':'-apply_updates/2-fun-0-'/2 40 0.38 18 [ 0.45]
'Elixir.Bunch.Struct':update_in/3 22 0.38 18 [ 0.82]
'Elixir.Enum':split_while_list/3 42 0.38 18 [ 0.43]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 20 0.40 19 [ 0.95]
'Elixir.Membrane.Pad.Data':get_and_update/3 86 0.40 19 [ 0.22]
'Elixir.Bunch.Enum':chunk_by_prev/3 42 0.40 19 [ 0.45]
'Elixir.Enumerable':impl_for/1 104 0.42 20 [ 0.19]
'Elixir.Bunch.Access':put_in/3 44 0.42 20 [ 0.45]
'Elixir.Membrane.Core.InputBuffer':do_take/2 22 0.42 20 [ 0.91]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 42 0.45 21 [ 0.50]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 44 0.45 21 [ 0.48]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 22 0.45 21 [ 0.95]
'Elixir.Access':'-key/2-fun-0-'/5 22 0.47 22 [ 1.00]
'Elixir.Kernel':put_in/3 44 0.47 22 [ 0.50]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 42 0.47 22 [ 0.52]
lists:do_flatten/2 80 0.49 23 [ 0.29]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 40 0.49 23 [ 0.57]
'Elixir.Qex':pop/1 42 0.49 23 [ 0.55]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 20 0.49 23 [ 1.15]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 60 0.51 24 [ 0.40]
'Elixir.Membrane.Core.Element.State':get_and_update/3 106 0.53 25 [ 0.24]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 42 0.53 25 [ 0.60]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 22 0.53 25 [ 1.14]
'Elixir.Membrane.Pad.Data':fetch/2 60 0.53 25 [ 0.42]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 66 0.55 26 [ 0.39]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 42 0.55 26 [ 0.62]
'Elixir.Bunch.Enum':try_reduce/3 84 0.55 26 [ 0.31]
'Elixir.Enum':reverse/1 126 0.55 26 [ 0.21]
'Elixir.Bunch.Access':update_in/3 62 0.57 27 [ 0.44]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 20 0.57 27 [ 1.35]
'Elixir.Enum':drop_while_list/2 84 0.57 27 [ 0.32]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 20 0.59 28 [ 1.40]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 62 0.59 28 [ 0.45]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 62 0.62 29 [ 0.47]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 20 0.66 31 [ 1.55]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 20 0.72 34 [ 1.70]
'Elixir.Membrane.SRTP.Encryptor':handle_process/4 20 0.74 35 [ 1.75]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 22 0.74 35 [ 1.59]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 44 0.76 36 [ 0.82]
'Elixir.Enumerable':'impl_for!'/1 104 0.83 39 [ 0.38]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 42 0.87 41 [ 0.98]
'Elixir.Enum':reduce_while/3 104 0.91 43 [ 0.41]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 22 0.98 46 [ 2.09]
'Elixir.Enumerable':reduce/3 104 1.02 48 [ 0.46]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 124 1.10 52 [ 0.42]
maps:find/2 232 1.17 55 [ 0.24]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 42 1.19 56 [ 1.33]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 298 1.21 57 [ 0.19]
'Elixir.Enumerable.List':reduce/3 186 1.21 57 [ 0.31]
'Elixir.Kernel':update_in/3 62 1.34 63 [ 1.02]
'Elixir.Bunch.Access':get_in/2 172 1.40 66 [ 0.38]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 278 1.42 67 [ 0.24]
erlang:send/2 20 1.68 79 [ 3.95]
'Elixir.Membrane.Core.Element.State':fetch/2 172 1.78 84 [ 0.49]
'Elixir.Map':get/3 446 2.19 103 [ 0.23]
'Elixir.Access':get/2 578 2.23 105 [ 0.18]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 258 2.38 112 [ 0.43]
'Elixir.Kernel':get_and_update_in/3 426 2.46 116 [ 0.27]
'Elixir.Bunch':listify/1 600 2.72 128 [ 0.21]
'Elixir.Access':get_and_update/3 404 2.82 133 [ 0.33]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 172 3.01 142 [ 0.83]
'Elixir.Kernel':get_in/2 576 3.84 181 [ 0.31]
'Elixir.Access':get/3 578 4.67 220 [ 0.38]
'Elixir.ExLibSRTP.Native.Nif':unifex_protect/5 20 4.80 226 [ 11.30]
gen_server:loop/7 22 4.82 227 [ 10.32]
'Elixir.Map':get_and_update/3 404 8.51 401 [ 0.99]
----------------------------------------------------------------------------------------- ----- ------- ---- [----------]
Total: 10480 100.00% 4713 [ 0.45]
****** Process <9928.4202.0> -- 0.11 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.EventProtocol.Any':'async?'/1 20 0.01 5 [ 0.25]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 20 0.02 6 [ 0.30]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 20 0.02 6 [ 0.30]
'Elixir.Membrane.Core.Element.EventController':exec_handle_event/3 20 0.02 6 [ 0.30]
'Elixir.Membrane.EventProtocol.Any':'sticky?'/1 20 0.02 6 [ 0.30]
lists:flatten/1 20 0.02 7 [ 0.35]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 20 0.02 7 [ 0.35]
'Elixir.Membrane.Core.Element.EventController':check_sync/2 20 0.02 7 [ 0.35]
'Elixir.Membrane.Event':'async?'/1 20 0.02 7 [ 0.35]
'Elixir.List':flatten/1 20 0.02 7 [ 0.35]
'Elixir.Membrane.Event':'sticky?'/1 20 0.02 9 [ 0.45]
'Elixir.Membrane.Core.Child.PadModel':'assert_instance!'/2 20 0.03 10 [ 0.50]
'Elixir.Keyword':'fetch!'/2 20 0.03 11 [ 0.55]
'Elixir.Membrane.RTCP.SdesPacket.Chunk':'__struct__'/0 39 0.03 11 [ 0.28]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-6-'/3 20 0.03 11 [ 0.55]
'Elixir.Membrane.RTCP.FeedbackPacket.TWCC':decode/1 37 0.03 12 [ 0.32]
'Elixir.Bunch.Enum':try_each/2 20 0.03 12 [ 0.60]
'Elixir.Enum':reduce/3 39 0.03 12 [ 0.31]
'Elixir.Membrane.Core.Element.ActionHandler':handle_event/3 39 0.04 14 [ 0.36]
'Elixir.Membrane.EventProtocol':'async?'/1 20 0.04 14 [ 0.70]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-2-'/2 39 0.04 15 [ 0.38]
'Elixir.Membrane.Core.Element.EventController':handle_special_event/3 20 0.04 15 [ 0.75]
'Elixir.Bunch.Enum':do_try_each/2 40 0.04 15 [ 0.38]
lists:reverse/2 37 0.04 16 [ 0.43]
'Elixir.Kernel':struct/2 39 0.05 18 [ 0.46]
'Elixir.Membrane.Core.Element.EventController':'-do_exec_handle_event/4-fun-0-'/1 20 0.05 18 [ 0.90]
'Elixir.Membrane.RTCP.SdesPacket':parse_items/1 39 0.05 18 [ 0.46]
'Elixir.Membrane.RTCP.FeedbackPacket.FIR':encode/1 20 0.05 18 [ 0.90]
'Elixir.Membrane.EventProtocol':'impl_for!'/1 40 0.05 18 [ 0.45]
'Elixir.System':normalize_time_unit/1 78 0.05 20 [ 0.26]
'Elixir.Kernel':'validate_struct!'/3 39 0.05 20 [ 0.51]
erts_internal:time_unit/0 39 0.05 20 [ 0.51]
'Elixir.Membrane.EventProtocol':'sticky?'/1 20 0.05 20 [ 1.00]
'Elixir.BiMap':'fetch_key!'/2 40 0.06 21 [ 0.53]
'Elixir.Membrane.Core.Element.EventController':do_exec_handle_event/4 20 0.06 23 [ 1.15]
'Elixir.Membrane.EventProtocol':impl_for/1 79 0.06 23 [ 0.29]
'Elixir.Membrane.Core.Element.EventController':exec_handle_event/4 20 0.07 24 [ 1.20]
erlang:system_time/0 39 0.07 24 [ 0.62]
lists:do_flatten/2 80 0.07 26 [ 0.33]
'Elixir.Membrane.Core.Element.EventController':handle_event/3 20 0.07 26 [ 1.30]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 101 0.07 26 [ 0.26]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 101 0.07 26 [ 0.26]
queue:in/2 101 0.08 28 [ 0.28]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 101 0.08 28 [ 0.28]
'Elixir.Membrane.Core.InputBuffer':store/2 101 0.08 29 [ 0.29]
maps:from_list/1 39 0.08 30 [ 0.77]
'Elixir.Membrane.RTCP.Header':serialize/2 20 0.08 30 [ 1.50]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 101 0.08 30 [ 0.30]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 101 0.08 31 [ 0.31]
'Elixir.Bunch.Enum':try_reduce_while/3 101 0.08 31 [ 0.31]
'Elixir.Membrane.RTCP.Parser':'-handle_process_list/4-fun-0-'/2 101 0.09 32 [ 0.32]
'Elixir.Enum':'-take_random/2-fun-0-'/2 101 0.09 32 [ 0.32]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 78 0.09 32 [ 0.41]
'Elixir.Membrane.RTCP.Parser':handle_demand/5 101 0.09 33 [ 0.33]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 101 0.09 33 [ 0.33]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 20 0.09 35 [ 1.75]
'Elixir.Kernel':'-struct/2-fun-0-'/2 39 0.09 35 [ 0.90]
'Elixir.BiMap':fetch_key/2 40 0.10 36 [ 0.90]
'Elixir.System':convert_time_unit/3 39 0.10 38 [ 0.97]
maps:merge/2 121 0.11 39 [ 0.32]
'Elixir.Membrane.RTCP.Parser':handle_event/4 20 0.11 39 [ 1.95]
'Elixir.Membrane.Helper.GenServer':noreply/2 121 0.11 39 [ 0.32]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 101 0.11 39 [ 0.39]
'Elixir.Membrane.RTCP.ReportPacketBlock':decode/1 101 0.11 40 [ 0.40]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-0-'/1 101 0.11 40 [ 0.40]
'Elixir.Membrane.RTCP.SdesPacket':parse_chunks/2 78 0.11 41 [ 0.53]
'Elixir.Membrane.Core.Message':send/4 69 0.12 43 [ 0.62]
'Elixir.Membrane.Event':'event?'/1 39 0.12 43 [ 1.10]
maps:remove/2 101 0.12 44 [ 0.44]
'Elixir.Membrane.RTCP.SdesPacket':'-decode/2-fun-0-'/1 39 0.12 44 [ 1.13]
'Elixir.Enum':into/3 39 0.12 44 [ 1.13]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 101 0.12 46 [ 0.46]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 202 0.12 46 [ 0.23]
'Elixir.Enum':flat_map/2 101 0.13 47 [ 0.47]
'Elixir.Membrane.Time':vm_time/0 39 0.13 48 [ 1.23]
gen_server:handle_common_reply/8 121 0.13 48 [ 0.40]
erlang:max/2 212 0.13 49 [ 0.23]
'Elixir.Membrane.RTP.Utils':strip_padding/2 177 0.14 51 [ 0.29]
'Elixir.Membrane.Core.Message':for_pad/1 121 0.14 51 [ 0.42]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 202 0.14 51 [ 0.25]
'Elixir.Keyword':get/2 141 0.14 53 [ 0.38]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 101 0.15 54 [ 0.53]
gen_server:try_dispatch/3 121 0.15 55 [ 0.45]
lists:keyfind/3 161 0.15 56 [ 0.35]
'Elixir.Membrane.RTCP.Parser':'-process_packets/2-fun-0-'/2 177 0.15 56 [ 0.32]
'Elixir.MapSet':put/2 101 0.16 59 [ 0.58]
'Elixir.Membrane.RTCP.FeedbackPacket':encode/1 20 0.16 60 [ 3.00]
'Elixir.Membrane.RTCP.Packet':parse/1 101 0.17 61 [ 0.60]
'Elixir.Enumerable.MapSet':reduce/3 101 0.17 61 [ 0.60]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 202 0.17 62 [ 0.31]
'Elixir.Enum':'-take_random/2-anonymous-4-'/3 101 0.17 63 [ 0.62]
maps:keys/1 101 0.17 64 [ 0.63]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 101 0.17 64 [ 0.63]
erlang:convert_time_unit/3 39 0.17 64 [ 1.64]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 101 0.18 65 [ 0.64]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 202 0.18 67 [ 0.33]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_redemand/2-fun-0-'/2 101 0.18 67 [ 0.66]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 101 0.19 69 [ 0.68]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 323 0.19 69 [ 0.21]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 101 0.19 70 [ 0.69]
queue:out/1 303 0.20 72 [ 0.24]
'Elixir.Qex':push/2 101 0.20 72 [ 0.71]
'Elixir.Membrane.RTCP.SdesPacket':parse_items/2 78 0.20 73 [ 0.94]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 101 0.20 74 [ 0.73]
'Elixir.Keyword':get/3 141 0.21 76 [ 0.54]
'Elixir.Membrane.RTCP.SdesPacket':decode/2 39 0.21 77 [ 1.97]
'Elixir.Membrane.Core.InputBuffer':store/3 101 0.21 77 [ 0.76]
'Elixir.Membrane.RTCP.Parser':handle_process_list/4 101 0.21 78 [ 0.77]
gen_server:decode_msg/9 121 0.21 79 [ 0.65]
'Elixir.Enum':split_while/2 323 0.22 80 [ 0.25]
'Elixir.Enum':take_random/2 101 0.22 80 [ 0.79]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 362 0.22 81 [ 0.22]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 101 0.22 82 [ 0.81]
'Elixir.MapSet':delete/2 101 0.23 83 [ 0.82]
'Elixir.Membrane.RTCP.ReportPacketBlock':decode/2 137 0.23 84 [ 0.61]
'Elixir.Membrane.RTCP.FeedbackPacket':decode/2 37 0.23 84 [ 2.27]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 101 0.23 84 [ 0.83]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 101 0.23 84 [ 0.83]
'Elixir.Access':key/2 202 0.23 85 [ 0.42]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 362 0.23 85 [ 0.23]
'Elixir.MapSet':to_list/1 101 0.24 87 [ 0.86]
'Elixir.Membrane.Core.Element.ActionHandler':handle_redemand/2 101 0.24 88 [ 0.87]
'Elixir.Enum':to_list/1 343 0.24 88 [ 0.26]
'Elixir.Membrane.RTCP.Packet':serialize/1 20 0.24 89 [ 4.45]
'Elixir.Membrane.Core.Element.ActionHandler':send_event/3 39 0.24 89 [ 2.28]
'Elixir.Bunch.Access':get_and_update_in/3 202 0.24 89 [ 0.44]
gen_server:handle_msg/6 121 0.24 89 [ 0.74]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 202 0.24 90 [ 0.45]
'Elixir.Enum':map/2 362 0.24 90 [ 0.25]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 404 0.25 91 [ 0.23]
gen_server:try_dispatch/4 121 0.25 91 [ 0.75]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 323 0.26 95 [ 0.29]
lists:reverse/1 323 0.26 97 [ 0.30]
'Elixir.Membrane.Core.Element':handle_info/2 121 0.27 98 [ 0.81]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 362 0.27 98 [ 0.27]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 222 0.27 98 [ 0.44]
'Elixir.Membrane.RTCP.Parser':process_packets/2 101 0.27 99 [ 0.98]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 444 0.27 99 [ 0.22]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 101 0.27 101 [ 1.00]
'Elixir.Membrane.RTCP.Parser':process_rtcp/2 177 0.28 102 [ 0.58]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 101 0.28 102 [ 1.01]
'Elixir.Kernel':struct/3 78 0.28 105 [ 1.35]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 202 0.29 106 [ 0.52]
'Elixir.Enum':drop_while/2 323 0.29 108 [ 0.33]
'Elixir.Membrane.Time':from_ntp_timestamp/1 39 0.30 111 [ 2.85]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 101 0.31 113 [ 1.12]
'Elixir.Membrane.RTCP.SenderReportPacket':decode/2 39 0.32 117 [ 3.00]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 121 0.32 117 [ 0.97]
'Elixir.Membrane.Pad.Data':fetch/2 303 0.32 118 [ 0.39]
'Elixir.Map':'update!'/3 101 0.32 118 [ 1.17]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 323 0.32 119 [ 0.37]
'Elixir.Membrane.RTCP.ReceiverReportPacket':decode/2 62 0.32 119 [ 1.92]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 202 0.32 119 [ 0.59]
'Elixir.BiMap':fetch/2 214 0.34 126 [ 0.59]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 101 0.35 128 [ 1.27]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 202 0.35 130 [ 0.64]
'Elixir.Membrane.Core.Element.DemandHandler':handle_redemand/2 202 0.36 131 [ 0.65]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 101 0.37 135 [ 1.34]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 665 0.39 144 [ 0.22]
'Elixir.Bunch.Access':update_in/3 303 0.40 147 [ 0.49]
'Elixir.Membrane.Core.Element.State':get_and_update/3 707 0.41 150 [ 0.21]
'Elixir.Membrane.Pad.Data':get_and_update/3 707 0.41 152 [ 0.21]
erlang:'++'/2 601 0.41 152 [ 0.25]
'Elixir.Bunch.Struct':update_in/3 202 0.42 153 [ 0.76]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 101 0.43 159 [ 1.57]
'Elixir.Kernel':update_in/3 303 0.44 161 [ 0.53]
'Elixir.Bunch.Enum':chunk_by_prev/3 323 0.44 163 [ 0.50]
'Elixir.Membrane.RTCP.Header':parse/1 177 0.45 166 [ 0.94]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 303 0.46 169 [ 0.56]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 101 0.47 174 [ 1.72]
'Elixir.Qex':pop/1 303 0.47 174 [ 0.57]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 323 0.47 175 [ 0.54]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 303 0.49 182 [ 0.60]
'Elixir.Membrane.RTCP.Parser':handle_process/4 101 0.50 186 [ 1.84]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 323 0.51 188 [ 0.58]
'Elixir.Membrane.Core.InputBuffer':do_take/2 202 0.51 189 [ 0.94]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 362 0.52 191 [ 0.53]
'Elixir.Enumerable':impl_for/1 828 0.53 195 [ 0.24]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 362 0.53 197 [ 0.54]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 404 0.53 197 [ 0.49]
'Elixir.Bunch.Access':put_in/3 404 0.53 197 [ 0.49]
'Elixir.Bunch.Enum':try_reduce/3 626 0.53 197 [ 0.31]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 463 0.56 206 [ 0.44]
'Elixir.Kernel':put_in/3 404 0.57 209 [ 0.52]
'Elixir.Enum':split_while_list/3 424 0.57 209 [ 0.49]
'Elixir.Enum':flat_map_list/2 278 0.57 210 [ 0.76]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 202 0.60 222 [ 1.10]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 303 0.65 239 [ 0.79]
'Elixir.Enum':reverse/1 1089 0.65 239 [ 0.22]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 646 0.68 251 [ 0.39]
'Elixir.Enum':drop_while_list/2 584 0.73 268 [ 0.46]
'Elixir.Access':'-key/2-fun-0-'/5 202 0.74 271 [ 1.34]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 362 0.74 271 [ 0.75]
'Elixir.Enum':reduce_while/3 727 0.79 290 [ 0.40]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 121 0.80 294 [ 2.43]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 202 0.81 297 [ 1.47]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 404 0.86 316 [ 0.78]
'Elixir.Enumerable':'impl_for!'/1 828 0.87 319 [ 0.39]
erlang:send/2 69 0.93 341 [ 4.94]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 323 0.93 344 [ 1.07]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 724 0.98 360 [ 0.50]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 2121 1.06 391 [ 0.18]
'Elixir.Membrane.RTCP.Packet':parse_packet/2 177 1.08 397 [ 2.24]
'Elixir.Membrane.RTCP.Packet':do_parse/2 278 1.17 430 [ 1.55]
'Elixir.Enumerable':reduce/3 828 1.32 486 [ 0.59]
maps:find/2 1969 1.45 533 [ 0.27]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 2139 1.45 536 [ 0.25]
'Elixir.Enumerable.List':reduce/3 1493 1.51 555 [ 0.37]
'Elixir.Membrane.Core.Element.State':fetch/2 1412 1.54 569 [ 0.40]
'Elixir.Bunch.Access':get_in/2 1412 1.60 588 [ 0.42]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 323 1.94 714 [ 2.21]
'Elixir.Map':get/3 3170 2.24 827 [ 0.26]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 2119 2.26 832 [ 0.39]
'Elixir.Access':get/2 4679 2.31 850 [ 0.18]
'Elixir.Kernel':get_and_update_in/3 3030 2.31 853 [ 0.28]
'Elixir.Access':get_and_update/3 2828 2.50 922 [ 0.33]
'Elixir.Bunch':listify/1 4743 2.77 1020 [ 0.22]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 1412 3.02 1114 [ 0.79]
'Elixir.Access':get/3 4679 3.90 1436 [ 0.31]
'Elixir.Kernel':get_in/2 4539 3.96 1458 [ 0.32]
gen_server:loop/7 121 4.38 1615 [ 13.35]
'Elixir.Map':get_and_update/3 2828 6.75 2486 [ 0.88]
----------------------------------------------------------------------------------------- ----- ------- ----- [----------]
Total: 81140 100.00% 36850 [ 0.45]
****** Process <9928.4203.0> -- 0.08 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.SRTCP.Decryptor':handle_demand/5 10 0.01 3 [ 0.30]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 10 0.02 5 [ 0.50]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 10 0.02 5 [ 0.50]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 10 0.03 9 [ 0.90]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 10 0.03 9 [ 0.90]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 10 0.03 9 [ 0.90]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 10 0.04 11 [ 1.10]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 10 0.07 18 [ 1.80]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_buffer/5-fun-0-'/2 101 0.11 29 [ 0.29]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 101 0.11 29 [ 0.29]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 10 0.11 30 [ 3.00]
'Elixir.Membrane.Buffer.Metric':from_unit/1 101 0.12 32 [ 0.32]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 101 0.12 33 [ 0.33]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 101 0.12 33 [ 0.33]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 111 0.12 33 [ 0.30]
'Elixir.Membrane.Core.Child.PadModel':'-update_multi/3-fun-0-'/2 101 0.13 34 [ 0.34]
'Elixir.Bunch.Enum':try_reduce_while/3 101 0.13 34 [ 0.34]
gen_server:try_dispatch/3 111 0.13 34 [ 0.31]
'Elixir.Enum':reduce/3 101 0.14 36 [ 0.36]
erlang:max/2 111 0.14 36 [ 0.32]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 101 0.14 37 [ 0.37]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 101 0.14 37 [ 0.37]
'Elixir.Membrane.SRTCP.Decryptor':'-handle_process_list/4-fun-0-'/2 101 0.14 38 [ 0.38]
'Elixir.Membrane.Core.Child.PadModel':apply_updates/2 101 0.15 39 [ 0.39]
'Elixir.Membrane.Helper.GenServer':noreply/2 111 0.15 39 [ 0.35]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 101 0.15 39 [ 0.39]
gen_server:handle_common_reply/8 111 0.15 39 [ 0.35]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 111 0.15 40 [ 0.36]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 101 0.15 40 [ 0.40]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 111 0.15 40 [ 0.36]
maps:merge/2 101 0.15 41 [ 0.41]
'Elixir.Access':key/2 111 0.15 41 [ 0.37]
'Elixir.ExLibSRTP':unprotect_rtcp/2 101 0.15 41 [ 0.41]
'Elixir.Keyword':get/2 111 0.16 42 [ 0.38]
lists:flatten/1 101 0.16 42 [ 0.42]
'Elixir.List':flatten/1 101 0.16 42 [ 0.42]
'Elixir.Membrane.Core.InputBuffer':store/2 101 0.16 42 [ 0.42]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 131 0.16 43 [ 0.33]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 111 0.16 43 [ 0.39]
gen_server:decode_msg/9 111 0.17 45 [ 0.41]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 111 0.17 46 [ 0.41]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 101 0.17 46 [ 0.46]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 212 0.19 50 [ 0.24]
'Elixir.Membrane.Core.Message':for_pad/1 111 0.20 52 [ 0.47]
'Elixir.Enum':split_while/2 212 0.20 54 [ 0.25]
'Elixir.ExLibSRTP.Native':unprotect/4 101 0.20 54 [ 0.53]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 212 0.21 55 [ 0.26]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 212 0.21 56 [ 0.26]
'Elixir.Enum':drop_while/2 212 0.21 56 [ 0.26]
'Elixir.ExLibSRTP':unprotect_rtcp/3 101 0.21 56 [ 0.55]
lists:keyfind/3 111 0.22 58 [ 0.52]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 222 0.23 61 [ 0.27]
'Elixir.Membrane.Core.Message':send/4 101 0.23 62 [ 0.61]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 202 0.23 62 [ 0.31]
queue:out/1 212 0.24 63 [ 0.30]
'Elixir.Membrane.Core.Child.PadModel':'update_multi!'/3 101 0.24 63 [ 0.62]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 212 0.24 64 [ 0.30]
'Elixir.Bunch.Access':get_and_update_in/3 111 0.25 65 [ 0.59]
'Elixir.Bunch.Enum':try_each/2 101 0.25 66 [ 0.65]
lists:reverse/1 212 0.26 68 [ 0.32]
erlang:'++'/2 212 0.26 68 [ 0.32]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 101 0.26 69 [ 0.68]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 111 0.26 69 [ 0.62]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 101 0.26 69 [ 0.68]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 101 0.28 74 [ 0.73]
'Elixir.Bunch.Enum':do_try_each/2 202 0.28 74 [ 0.37]
gen_server:handle_msg/6 111 0.29 76 [ 0.68]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 111 0.29 77 [ 0.69]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 101 0.29 78 [ 0.77]
'Elixir.Keyword':get/3 111 0.31 81 [ 0.73]
'Elixir.Enum':to_list/1 313 0.31 82 [ 0.26]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 212 0.31 83 [ 0.39]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 111 0.32 84 [ 0.76]
gen_server:try_dispatch/4 111 0.32 86 [ 0.77]
'Elixir.Map':update/4 101 0.33 88 [ 0.87]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 101 0.34 89 [ 0.88]
'Elixir.Membrane.Core.Child.PadModel':update_multi/3 101 0.34 90 [ 0.89]
'Elixir.Membrane.Core.Element':handle_info/2 111 0.36 95 [ 0.86]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 212 0.37 98 [ 0.46]
queue:in/2 101 0.38 101 [ 1.00]
'Elixir.Bunch.Struct':update_in/3 111 0.39 102 [ 0.92]
'Elixir.Membrane.Pad.Data':get_and_update/3 434 0.40 105 [ 0.24]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 212 0.40 107 [ 0.50]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 111 0.41 108 [ 0.97]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 222 0.41 109 [ 0.49]
'Elixir.Bunch.Access':put_in/3 222 0.42 110 [ 0.50]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 434 0.42 112 [ 0.26]
'Elixir.Membrane.Core.InputBuffer':store/3 101 0.43 114 [ 1.13]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 101 0.44 116 [ 1.15]
'Elixir.Enumerable':impl_for/1 525 0.44 117 [ 0.22]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 212 0.45 118 [ 0.56]
'Elixir.Membrane.Core.InputBuffer':do_take/2 111 0.45 120 [ 1.08]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 101 0.46 123 [ 1.22]
'Elixir.Enum':map/2 313 0.47 124 [ 0.40]
'Elixir.Qex':pop/1 212 0.47 125 [ 0.59]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 101 0.48 128 [ 1.27]
'Elixir.Enum':split_while_list/3 212 0.49 131 [ 0.62]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 212 0.50 132 [ 0.62]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 212 0.50 133 [ 0.63]
'Elixir.Bunch.Enum':chunk_by_prev/3 212 0.51 134 [ 0.63]
lists:do_flatten/2 404 0.51 136 [ 0.34]
'Elixir.Bunch.Enum':try_reduce/3 424 0.51 136 [ 0.32]
'Elixir.Enum':reverse/1 636 0.51 136 [ 0.21]
'Elixir.Access':'-key/2-fun-0-'/5 111 0.52 139 [ 1.25]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 202 0.52 139 [ 0.69]
'Elixir.Kernel':put_in/3 222 0.53 140 [ 0.63]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 111 0.53 141 [ 1.27]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 333 0.54 143 [ 0.43]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 111 0.54 143 [ 1.29]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 212 0.54 143 [ 0.67]
'Elixir.Bunch.Access':update_in/3 313 0.57 151 [ 0.48]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 313 0.57 152 [ 0.49]
'Elixir.Enum':drop_while_list/2 424 0.57 152 [ 0.36]
'Elixir.Membrane.Pad.Data':fetch/2 303 0.58 153 [ 0.50]
'Elixir.Membrane.Core.Element.State':get_and_update/3 535 0.59 155 [ 0.29]
'Elixir.Kernel':update_in/3 313 0.61 161 [ 0.51]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 313 0.62 163 [ 0.52]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 303 0.62 164 [ 0.54]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 212 0.62 164 [ 0.77]
'Elixir.Qex':push/2 101 0.62 165 [ 1.63]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 101 0.64 170 [ 1.68]
'Elixir.Membrane.SRTCP.Decryptor':handle_process/4 101 0.65 173 [ 1.71]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 111 0.69 182 [ 1.64]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 222 0.73 193 [ 0.87]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 101 0.76 201 [ 1.99]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 101 0.77 204 [ 2.02]
'Elixir.Enumerable':'impl_for!'/1 525 0.78 206 [ 0.39]
'Elixir.Membrane.SRTCP.Decryptor':handle_process_list/4 101 0.82 217 [ 2.15]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 212 0.84 222 [ 1.05]
'Elixir.Enum':reduce_while/3 525 0.84 223 [ 0.42]
'Elixir.Enumerable':reduce/3 525 0.99 263 [ 0.50]
maps:find/2 1171 1.10 292 [ 0.25]
'Elixir.Enumerable.List':reduce/3 939 1.15 304 [ 0.32]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 111 1.17 311 [ 2.80]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 1504 1.27 335 [ 0.22]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 626 1.29 342 [ 0.55]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 1403 1.34 355 [ 0.25]
'Elixir.Membrane.Core.Child.PadModel':'-apply_updates/2-fun-0-'/2 202 1.36 360 [ 1.78]
'Elixir.Bunch.Access':get_in/2 868 1.39 368 [ 0.42]
'Elixir.Membrane.Core.Element.State':fetch/2 868 1.53 406 [ 0.47]
erlang:send/2 101 1.74 461 [ 4.56]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 1302 1.87 496 [ 0.38]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 212 1.88 498 [ 2.35]
'Elixir.Map':get/3 2251 1.97 521 [ 0.23]
'Elixir.Access':get/2 2917 1.99 528 [ 0.18]
'Elixir.Bunch':listify/1 3028 2.24 594 [ 0.20]
'Elixir.Access':get_and_update/3 2039 2.58 684 [ 0.34]
'Elixir.Kernel':get_and_update_in/3 2150 2.60 689 [ 0.32]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 868 2.67 706 [ 0.81]
'Elixir.Kernel':get_in/2 2907 3.67 972 [ 0.33]
'Elixir.Access':get/3 2917 3.74 991 [ 0.34]
gen_server:loop/7 111 4.65 1232 [ 11.10]
'Elixir.ExLibSRTP.Native.Nif':unifex_unprotect/4 101 5.43 1438 [ 14.24]
'Elixir.Map':get_and_update/3 2039 7.32 1937 [ 0.95]
----------------------------------------------------------------------------------------- ----- ------- ----- [----------]
Total: 52794 100.00% 26478 [ 0.50]
****** Process <9928.4220.0> -- 0.15 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.Core.Message':send/4 20 0.04 20 [ 1.00]
erlang:send/2 20 0.07 37 [ 1.85]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 206 0.12 61 [ 0.30]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 206 0.13 63 [ 0.31]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 206 0.13 64 [ 0.31]
'Elixir.Enum':to_list/1 206 0.13 64 [ 0.31]
'Elixir.Enum':'-take_random/2-fun-0-'/2 206 0.13 64 [ 0.31]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 206 0.13 64 [ 0.31]
'Elixir.Keyword':get/2 206 0.13 65 [ 0.32]
lists:reverse/1 206 0.13 67 [ 0.33]
gen_server:try_dispatch/3 206 0.13 68 [ 0.33]
queue:in/2 206 0.14 70 [ 0.34]
'Elixir.Membrane.Core.InputBuffer':store/2 206 0.14 70 [ 0.34]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 206 0.14 72 [ 0.35]
'Elixir.Enum':drop_while/2 206 0.14 72 [ 0.35]
'Elixir.Enum':split_while/2 206 0.14 72 [ 0.35]
'Elixir.Membrane.Helper.GenServer':noreply/2 206 0.14 73 [ 0.35]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 206 0.15 74 [ 0.36]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 206 0.15 74 [ 0.36]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 206 0.15 74 [ 0.36]
gen_server:handle_common_reply/8 206 0.15 77 [ 0.37]
'Elixir.Membrane.Core.Message':for_pad/1 206 0.15 78 [ 0.38]
'Elixir.Membrane.Element.Fake.Sink.Buffers':handle_write_list/4 206 0.16 81 [ 0.39]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 206 0.16 81 [ 0.39]
erlang:'++'/2 206 0.17 85 [ 0.41]
gen_server:decode_msg/9 206 0.17 86 [ 0.42]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 206 0.17 87 [ 0.42]
maps:remove/2 206 0.18 89 [ 0.43]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 206 0.18 91 [ 0.44]
lists:keyfind/3 206 0.19 95 [ 0.46]
maps:merge/2 206 0.19 97 [ 0.47]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 206 0.20 103 [ 0.50]
'Elixir.Membrane.Core.Element.DemandHandler':'-supply_demand/2-fun-0-'/2 206 0.21 104 [ 0.50]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 206 0.22 112 [ 0.54]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 206 0.22 112 [ 0.54]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 206 0.22 113 [ 0.55]
erlang:max/2 432 0.22 113 [ 0.26]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 206 0.23 114 [ 0.55]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 412 0.23 115 [ 0.28]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 412 0.23 115 [ 0.28]
'Elixir.Enum':split_while_list/3 206 0.23 116 [ 0.56]
'Elixir.MapSet':put/2 206 0.23 117 [ 0.57]
maps:keys/1 206 0.24 119 [ 0.58]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 412 0.24 123 [ 0.30]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 412 0.24 123 [ 0.30]
'Elixir.Enum':map/2 412 0.25 124 [ 0.30]
'Elixir.Bunch.Enum':chunk_by_prev/3 206 0.25 125 [ 0.61]
'Elixir.Enumerable.MapSet':reduce/3 206 0.25 126 [ 0.61]
'Elixir.Enum':'-take_random/2-anonymous-4-'/3 206 0.26 129 [ 0.63]
'Elixir.Keyword':get/3 206 0.27 134 [ 0.65]
'Elixir.MapSet':to_list/1 206 0.27 136 [ 0.66]
gen_server:handle_msg/6 206 0.27 137 [ 0.67]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 206 0.28 139 [ 0.67]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 412 0.28 142 [ 0.34]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 206 0.29 145 [ 0.70]
'Elixir.MapSet':delete/2 206 0.30 152 [ 0.74]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 206 0.30 153 [ 0.74]
'Elixir.Enum':take_random/2 206 0.31 154 [ 0.75]
gen_server:try_dispatch/4 206 0.31 157 [ 0.76]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 206 0.32 159 [ 0.77]
'Elixir.Membrane.Core.Element':handle_info/2 206 0.33 164 [ 0.80]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 206 0.33 165 [ 0.80]
'Elixir.Qex':push/2 206 0.33 165 [ 0.80]
'Elixir.Enum':drop_while_list/2 412 0.34 169 [ 0.41]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 206 0.34 169 [ 0.82]
'Elixir.Membrane.Core.InputBuffer':store/3 206 0.34 170 [ 0.83]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 206 0.35 178 [ 0.86]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 824 0.37 185 [ 0.22]
'Elixir.Map':'update!'/3 206 0.38 189 [ 0.92]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 824 0.38 191 [ 0.23]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 206 0.41 209 [ 1.01]
queue:out/1 618 0.42 213 [ 0.34]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 206 0.43 216 [ 1.05]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-4-'/1 206 0.43 216 [ 1.05]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 206 0.45 225 [ 1.09]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 412 0.46 231 [ 0.56]
'Elixir.Enum':reverse/1 1030 0.46 234 [ 0.23]
'Elixir.Bunch.Access':get_and_update_in/3 206 0.49 245 [ 1.19]
'Elixir.Enumerable':impl_for/1 1030 0.50 250 [ 0.24]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 206 0.50 250 [ 1.21]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 206 0.52 262 [ 1.27]
'Elixir.Membrane.Pad.Data':fetch/2 618 0.53 266 [ 0.43]
'Elixir.Bunch.Access':update_in/3 618 0.55 278 [ 0.45]
'Elixir.Membrane.Pad.Data':get_and_update/3 1236 0.56 282 [ 0.23]
'Elixir.Membrane.Core.Element.State':get_and_update/3 1236 0.58 294 [ 0.24]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 618 0.60 303 [ 0.49]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 412 0.60 303 [ 0.74]
'Elixir.Bunch.Enum':try_reduce/3 824 0.62 311 [ 0.38]
'Elixir.Bunch.Struct':update_in/3 412 0.63 318 [ 0.77]
'Elixir.Kernel':update_in/3 618 0.65 329 [ 0.53]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 206 0.69 347 [ 1.68]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 824 0.69 350 [ 0.42]
'Elixir.Membrane.Core.InputBuffer':do_take/2 412 0.73 370 [ 0.90]
'Elixir.Access':'-key/2-fun-0-'/5 412 0.76 383 [ 0.93]
'Elixir.Bunch.Access':put_in/3 824 0.77 390 [ 0.47]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 824 0.77 390 [ 0.47]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 824 0.78 392 [ 0.48]
'Elixir.Enum':reduce_while/3 824 0.78 395 [ 0.48]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 412 0.83 418 [ 1.01]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 618 0.86 431 [ 0.70]
'Elixir.Enumerable':'impl_for!'/1 1030 0.87 436 [ 0.42]
'Elixir.Kernel':put_in/3 824 0.87 437 [ 0.53]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 206 0.90 451 [ 2.19]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 412 0.90 453 [ 1.10]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 412 0.91 456 [ 1.11]
'Elixir.Access':key/2 412 0.96 482 [ 1.17]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 206 1.02 514 [ 2.50]
'Elixir.Qex':pop/1 618 1.04 522 [ 0.84]
'Elixir.Enumerable.List':reduce/3 1648 1.08 544 [ 0.33]
maps:find/2 2472 1.24 624 [ 0.25]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 412 1.25 629 [ 1.53]
'Elixir.Enumerable':reduce/3 1030 1.31 659 [ 0.64]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 824 1.35 680 [ 0.83]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 3708 1.46 737 [ 0.20]
'Elixir.Bunch.Access':get_in/2 1854 1.58 796 [ 0.43]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 3090 1.60 805 [ 0.26]
'Elixir.Membrane.Core.Element.State':fetch/2 1854 1.63 819 [ 0.44]
'Elixir.Map':get/3 5356 2.41 1213 [ 0.23]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 3090 2.42 1221 [ 0.40]
'Elixir.Access':get/2 6180 2.44 1227 [ 0.20]
'Elixir.Bunch':listify/1 7004 2.86 1439 [ 0.21]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 1854 2.99 1507 [ 0.81]
'Elixir.Kernel':get_and_update_in/3 5356 4.14 2087 [ 0.39]
'Elixir.Access':get_and_update/3 4944 4.28 2154 [ 0.44]
'Elixir.Kernel':get_in/2 6180 4.61 2322 [ 0.38]
'Elixir.Access':get/3 6180 5.05 2542 [ 0.41]
gen_server:loop/7 206 5.89 2965 [ 14.39]
'Elixir.Map':get_and_update/3 4944 9.65 4861 [ 0.98]
----------------------------------------------------------------------------------------- ------ ------- ----- [----------]
Total: 106562 100.00% 50374 [ 0.47]
****** Process <9928.4221.0> -- 0.21 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.Element.Tee.Master':handle_demand/5 20 0.01 7 [ 0.35]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 20 0.01 10 [ 0.50]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 20 0.02 12 [ 0.60]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 20 0.02 14 [ 0.70]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 20 0.02 14 [ 0.70]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 20 0.02 17 [ 0.85]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 20 0.03 21 [ 1.05]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 20 0.05 33 [ 1.65]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 20 0.05 35 [ 1.75]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_buffer/5-fun-0-'/2 206 0.09 61 [ 0.30]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 206 0.09 62 [ 0.30]
'Elixir.Membrane.Buffer.Metric':from_unit/1 206 0.09 63 [ 0.31]
queue:in/2 206 0.10 66 [ 0.32]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 206 0.10 66 [ 0.32]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 226 0.10 66 [ 0.29]
gen_server:try_dispatch/3 226 0.10 67 [ 0.30]
erlang:max/2 246 0.10 68 [ 0.28]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 206 0.10 69 [ 0.33]
'Elixir.Keyword':get/2 226 0.10 70 [ 0.31]
maps:iterator/1 206 0.10 70 [ 0.34]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 226 0.10 70 [ 0.31]
'Elixir.Membrane.Core.InputBuffer':store/2 206 0.10 70 [ 0.34]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 206 0.10 72 [ 0.35]
'Elixir.Enum':reduce/3 206 0.10 72 [ 0.35]
'Elixir.Membrane.Core.Child.PadModel':'-update_multi/3-fun-0-'/2 206 0.11 73 [ 0.35]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 206 0.11 74 [ 0.36]
'Elixir.Membrane.Helper.GenServer':noreply/2 226 0.11 76 [ 0.34]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 266 0.11 79 [ 0.30]
'Elixir.Membrane.Core.Message':for_pad/1 226 0.11 79 [ 0.35]
'Elixir.Access':key/2 226 0.12 80 [ 0.35]
'Elixir.Membrane.Core.Child.PadModel':apply_updates/2 206 0.12 80 [ 0.39]
'Elixir.Membrane.Element.Tee.Master':handle_process/4 206 0.12 82 [ 0.40]
gen_server:decode_msg/9 226 0.12 82 [ 0.36]
maps:merge/2 206 0.12 83 [ 0.40]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 206 0.12 84 [ 0.41]
lists:reverse/2 206 0.13 91 [ 0.44]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 226 0.13 91 [ 0.40]
gen_server:handle_common_reply/8 226 0.13 93 [ 0.41]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 226 0.14 99 [ 0.44]
lists:keyfind/3 226 0.15 102 [ 0.45]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 432 0.15 103 [ 0.24]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 432 0.15 104 [ 0.24]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 432 0.15 106 [ 0.25]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 432 0.16 110 [ 0.25]
'Elixir.Membrane.Core.Child.PadModel':'update_multi!'/3 206 0.16 110 [ 0.53]
'Elixir.Membrane.Element.Tee.Master':'-handle_process_list/4-fun-0-'/2 206 0.16 113 [ 0.55]
maps:keys/1 206 0.17 114 [ 0.55]
'Elixir.Bunch.Access':get_and_update_in/3 226 0.17 114 [ 0.50]
queue:out/1 432 0.17 115 [ 0.27]
'Elixir.Enum':drop_while/2 432 0.17 116 [ 0.27]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 226 0.17 116 [ 0.51]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 452 0.17 119 [ 0.26]
'Elixir.Enum':split_while/2 432 0.17 120 [ 0.28]
'Elixir.Map':new/1 206 0.18 122 [ 0.59]
'Elixir.Membrane.Element.Tee.Master':handle_process_list/4 206 0.18 127 [ 0.62]
'Elixir.Enum':map/2 432 0.19 128 [ 0.30]
'Elixir.Keyword':get/3 226 0.20 136 [ 0.60]
erlang:'++'/2 432 0.20 137 [ 0.32]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 206 0.21 142 [ 0.69]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 432 0.21 143 [ 0.33]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 206 0.21 143 [ 0.69]
gen_server:handle_msg/6 226 0.21 144 [ 0.64]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 226 0.22 149 [ 0.66]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 412 0.22 155 [ 0.38]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 226 0.23 157 [ 0.69]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 206 0.24 164 [ 0.80]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 206 0.24 167 [ 0.81]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 206 0.24 168 [ 0.82]
'Elixir.Qex':push/2 206 0.25 169 [ 0.82]
'Elixir.Membrane.Core.Child.PadModel':update_multi/3 206 0.25 172 [ 0.83]
'Elixir.Membrane.Core.InputBuffer':store/3 206 0.26 177 [ 0.86]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 432 0.26 179 [ 0.41]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 226 0.26 179 [ 0.79]
'Elixir.Map':update/4 206 0.26 182 [ 0.88]
'Elixir.Bunch.Struct':update_in/3 226 0.27 183 [ 0.81]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 824 0.27 184 [ 0.22]
gen_server:try_dispatch/4 226 0.27 189 [ 0.84]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 432 0.28 190 [ 0.44]
'Elixir.Membrane.Core.Child.PadModel':'-apply_updates/2-fun-0-'/2 412 0.28 192 [ 0.47]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 206 0.28 196 [ 0.95]
'Elixir.Enum':split_while_list/3 432 0.29 199 [ 0.46]
'Elixir.Membrane.Core.Element.ActionHandler':'-do_handle_action/4-fun-1-'/5 824 0.29 203 [ 0.25]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 432 0.30 204 [ 0.47]
'Elixir.Membrane.Core.Element':handle_info/2 226 0.30 208 [ 0.92]
'Elixir.Membrane.Core.InputBuffer':do_take/2 226 0.30 209 [ 0.92]
'Elixir.Bunch.Enum':try_reduce_while/3 206 0.31 211 [ 1.02]
'Elixir.Bunch.Access':put_in/3 452 0.31 215 [ 0.48]
'Elixir.Bunch.Enum':chunk_by_prev/3 432 0.31 216 [ 0.50]
maps:fold/3 206 0.32 218 [ 1.06]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 452 0.33 228 [ 0.50]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 226 0.34 236 [ 1.04]
'Elixir.Qex':pop/1 432 0.34 236 [ 0.55]
'Elixir.Membrane.Pad.Data':get_and_update/3 884 0.35 242 [ 0.27]
lists:reverse/1 638 0.36 247 [ 0.39]
'Elixir.Access':'-key/2-fun-0-'/5 226 0.36 251 [ 1.11]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 226 0.38 260 [ 1.15]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 432 0.38 261 [ 0.60]
maps:to_list_internal/1 1030 0.38 262 [ 0.25]
'Elixir.Enum':to_list/1 1256 0.38 262 [ 0.21]
'Elixir.Kernel':put_in/3 452 0.38 264 [ 0.58]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 412 0.38 265 [ 0.64]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 206 0.38 265 [ 1.29]
'Elixir.Membrane.Core.Child.PadModel':'-filter_data/2-fun-0-'/2 1030 0.39 269 [ 0.26]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 432 0.40 273 [ 0.63]
'Elixir.Enum':filter/2 206 0.40 273 [ 1.33]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 618 0.40 273 [ 0.44]
'Elixir.Membrane.Core.Child.PadModel':filter_data/2 206 0.40 274 [ 1.33]
'Elixir.Enum':reverse/1 1296 0.40 279 [ 0.22]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 206 0.42 291 [ 1.41]
'Elixir.Bunch.Access':update_in/3 638 0.43 293 [ 0.46]
'Elixir.Enum':'-filter/2-anonymous-1-'/4 1030 0.43 294 [ 0.29]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 432 0.43 297 [ 0.69]
'Elixir.Enum':drop_while_list/2 864 0.44 301 [ 0.35]
'Elixir.Membrane.Core.Child.PadModel':'constraints_met?'/2 1030 0.45 311 [ 0.30]
maps:from_list/1 206 0.46 314 [ 1.52]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 1502 0.48 333 [ 0.22]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 638 0.48 333 [ 0.52]
'Elixir.Kernel':update_in/3 638 0.50 344 [ 0.54]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 824 0.50 347 [ 0.42]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 678 0.51 351 [ 0.52]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 226 0.51 354 [ 1.57]
maps:next/1 1236 0.53 362 [ 0.29]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 206 0.53 367 [ 1.78]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 226 0.55 378 [ 1.67]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 452 0.56 383 [ 0.85]
'Elixir.Membrane.Core.Message':send/4 844 0.58 402 [ 0.48]
'Elixir.Bunch.Enum':try_each/2 824 0.59 404 [ 0.49]
erts_internal:map_next/3 1236 0.61 421 [ 0.34]
'Elixir.Membrane.Core.Child.PadModel':'-constraints_met?/2-fun-0-'/2 1030 0.65 447 [ 0.43]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 432 0.65 448 [ 1.04]
maps:to_list/1 1030 0.65 450 [ 0.44]
'Elixir.Bunch.Enum':try_reduce/3 1070 0.65 451 [ 0.42]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 864 0.65 451 [ 0.52]
'Elixir.Enum':'-all?/2-fun-0-'/3 1030 0.68 466 [ 0.45]
'Elixir.Enum':'all?'/2 1030 0.69 473 [ 0.46]
'Elixir.Enumerable.Map':reduce/3 1030 0.72 494 [ 0.48]
'Elixir.Enumerable':impl_for/1 2306 0.73 503 [ 0.22]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 226 0.73 505 [ 2.23]
'Elixir.Bunch.Enum':do_try_each/2 1648 0.78 534 [ 0.32]
'Elixir.Membrane.Core.Element.State':get_and_update/3 1090 0.78 540 [ 0.50]
'Elixir.Enum':'-filter/2-fun-0-'/3 1030 0.83 572 [ 0.56]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 3064 0.92 634 [ 0.21]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 1256 0.98 673 [ 0.54]
'Elixir.Enum':reduce_while/3 1276 1.03 707 [ 0.55]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 1462 1.06 730 [ 0.50]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 432 1.09 754 [ 1.75]
'Elixir.Membrane.Pad.Data':fetch/2 1648 1.18 811 [ 0.49]
maps:fold_1/3 1236 1.19 817 [ 0.66]
'Elixir.Enumerable':'impl_for!'/1 2306 1.33 914 [ 0.40]
'Elixir.Membrane.Core.Element.State':fetch/2 2386 1.36 936 [ 0.39]
'Elixir.Bunch.Access':get_in/2 2386 1.41 971 [ 0.41]
maps:find/2 4034 1.44 989 [ 0.25]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 3476 1.50 1035 [ 0.30]
'Elixir.Map':get/3 4586 1.56 1077 [ 0.23]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 3270 1.91 1318 [ 0.40]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 1648 1.93 1328 [ 0.81]
'Elixir.Kernel':get_and_update_in/3 4380 1.95 1345 [ 0.31]
'Elixir.Access':get_and_update/3 4154 2.20 1516 [ 0.36]
'Elixir.Enumerable':reduce/3 2306 2.24 1546 [ 0.67]
'Elixir.Bunch':listify/1 7404 2.26 1554 [ 0.21]
'Elixir.Access':get/2 8826 2.46 1696 [ 0.19]
'Elixir.Enumerable.List':reduce/3 5004 2.78 1917 [ 0.38]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 2386 2.83 1947 [ 0.82]
'Elixir.Kernel':get_in/2 7776 3.80 2615 [ 0.34]
erlang:send/2 844 3.86 2661 [ 3.15]
gen_server:loop/7 226 4.15 2861 [ 12.66]
'Elixir.Access':get/3 8826 4.59 3162 [ 0.36]
'Elixir.Map':get_and_update/3 4154 5.82 4011 [ 0.97]
----------------------------------------------------------------------------------------- ------ ------- ----- [----------]
Total: 151914 100.00% 68899 [ 0.45]
****** Process <9928.4222.0> -- 0.15 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 20 0.01 7 [ 0.35]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 20 0.02 12 [ 0.60]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 20 0.02 12 [ 0.60]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 20 0.02 12 [ 0.60]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 20 0.02 12 [ 0.60]
'Elixir.Membrane.WebRTC.TrackFilter':handle_demand/5 20 0.03 13 [ 0.65]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 20 0.03 16 [ 0.80]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 20 0.07 33 [ 1.65]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 20 0.11 56 [ 2.80]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 206 0.13 63 [ 0.31]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 206 0.13 64 [ 0.31]
'Elixir.Membrane.Buffer.Metric':from_unit/1 206 0.13 64 [ 0.31]
'Elixir.Membrane.WebRTC.TrackFilter':'-handle_process_list/4-fun-0-'/2 206 0.13 65 [ 0.32]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_buffer/5-fun-0-'/2 206 0.14 66 [ 0.32]
gen_server:try_dispatch/3 226 0.14 66 [ 0.29]
queue:in/2 206 0.14 67 [ 0.33]
lists:flatten/1 206 0.14 68 [ 0.33]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 206 0.14 68 [ 0.33]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 206 0.14 69 [ 0.33]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 226 0.14 70 [ 0.31]
'Elixir.Membrane.Core.InputBuffer':store/2 206 0.15 72 [ 0.35]
'Elixir.Keyword':get/2 226 0.15 73 [ 0.32]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 206 0.15 73 [ 0.35]
'Elixir.Membrane.Core.Child.PadModel':'-update_multi/3-fun-0-'/2 206 0.15 74 [ 0.36]
'Elixir.Bunch.Enum':try_reduce_while/3 206 0.15 74 [ 0.36]
erlang:max/2 246 0.15 74 [ 0.30]
'Elixir.Enum':reduce/3 206 0.15 75 [ 0.36]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 206 0.16 76 [ 0.37]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 226 0.16 76 [ 0.34]
maps:merge/2 206 0.16 79 [ 0.38]
'Elixir.Access':key/2 226 0.17 81 [ 0.36]
'Elixir.Membrane.Core.Child.PadModel':apply_updates/2 206 0.17 82 [ 0.40]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 266 0.17 82 [ 0.31]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 206 0.17 82 [ 0.40]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 226 0.17 83 [ 0.37]
'Elixir.Membrane.Helper.GenServer':noreply/2 226 0.17 85 [ 0.38]
gen_server:handle_common_reply/8 226 0.17 85 [ 0.38]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 206 0.18 86 [ 0.42]
gen_server:decode_msg/9 226 0.18 86 [ 0.38]
'Elixir.Membrane.Core.Message':for_pad/1 226 0.18 87 [ 0.38]
'Elixir.List':flatten/1 206 0.18 89 [ 0.43]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 226 0.21 103 [ 0.46]
lists:keyfind/3 226 0.22 106 [ 0.47]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 226 0.22 109 [ 0.48]
'Elixir.Membrane.WebRTC.TrackFilter':handle_process/4 206 0.22 109 [ 0.53]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 432 0.23 113 [ 0.26]
'Elixir.Membrane.Core.Child.PadModel':'update_multi!'/3 206 0.24 115 [ 0.56]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 452 0.24 115 [ 0.25]
lists:reverse/1 432 0.24 117 [ 0.27]
queue:out/1 432 0.24 118 [ 0.27]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 412 0.24 118 [ 0.29]
'Elixir.Bunch.Access':get_and_update_in/3 226 0.25 120 [ 0.53]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 432 0.25 120 [ 0.28]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 432 0.27 133 [ 0.31]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 226 0.27 133 [ 0.59]
'Elixir.Membrane.WebRTC.TrackFilter':handle_process_list/4 206 0.28 135 [ 0.66]
'Elixir.Keyword':get/3 226 0.28 139 [ 0.62]
'Elixir.Bunch.Enum':try_each/2 206 0.28 139 [ 0.67]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 206 0.29 141 [ 0.68]
'Elixir.Enum':split_while/2 432 0.29 142 [ 0.33]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 226 0.31 150 [ 0.66]
'Elixir.Membrane.Core.Message':send/4 226 0.31 151 [ 0.67]
erlang:'++'/2 432 0.31 151 [ 0.35]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 432 0.31 152 [ 0.35]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 206 0.31 152 [ 0.74]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 206 0.31 153 [ 0.74]
gen_server:handle_msg/6 226 0.32 154 [ 0.68]
'Elixir.Enum':to_list/1 638 0.32 156 [ 0.24]
'Elixir.Bunch.Enum':do_try_each/2 412 0.32 157 [ 0.38]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 206 0.32 157 [ 0.76]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 226 0.34 166 [ 0.73]
gen_server:try_dispatch/4 226 0.34 167 [ 0.74]
'Elixir.Enum':map/2 638 0.34 168 [ 0.26]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 432 0.35 169 [ 0.39]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 206 0.35 169 [ 0.82]
'Elixir.Membrane.Core.InputBuffer':store/3 206 0.35 173 [ 0.84]
'Elixir.Membrane.Core.Child.PadModel':update_multi/3 206 0.36 177 [ 0.86]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 226 0.36 177 [ 0.78]
'Elixir.Map':update/4 206 0.38 184 [ 0.89]
'Elixir.Enum':drop_while/2 432 0.38 186 [ 0.43]
'Elixir.Bunch.Struct':update_in/3 226 0.39 189 [ 0.84]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 432 0.40 194 [ 0.45]
'Elixir.Qex':push/2 206 0.40 195 [ 0.95]
'Elixir.Membrane.Core.Element':handle_info/2 226 0.41 201 [ 0.89]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 884 0.42 204 [ 0.23]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 206 0.42 204 [ 0.99]
'Elixir.Membrane.Core.Child.PadModel':'-apply_updates/2-fun-0-'/2 412 0.42 205 [ 0.50]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 432 0.42 207 [ 0.48]
'Elixir.Enum':split_while_list/3 432 0.42 207 [ 0.48]
'Elixir.Membrane.Pad.Data':get_and_update/3 884 0.43 212 [ 0.24]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 206 0.44 216 [ 1.05]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 452 0.44 217 [ 0.48]
'Elixir.Membrane.Core.InputBuffer':do_take/2 226 0.45 218 [ 0.96]
'Elixir.Bunch.Access':put_in/3 452 0.45 219 [ 0.48]
'Elixir.Access':'-key/2-fun-0-'/5 226 0.47 227 [ 1.00]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 432 0.47 229 [ 0.53]
'Elixir.Enumerable':impl_for/1 1070 0.49 240 [ 0.22]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 226 0.50 242 [ 1.07]
'Elixir.Qex':pop/1 432 0.51 249 [ 0.58]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 206 0.51 251 [ 1.22]
'Elixir.Bunch.Enum':chunk_by_prev/3 432 0.52 253 [ 0.59]
'Elixir.Kernel':put_in/3 452 0.52 254 [ 0.56]
lists:do_flatten/2 824 0.53 259 [ 0.31]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 432 0.54 263 [ 0.61]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 432 0.54 265 [ 0.61]
'Elixir.Membrane.Pad.Data':fetch/2 618 0.55 268 [ 0.43]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 618 0.56 273 [ 0.44]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 226 0.56 274 [ 1.21]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 432 0.59 286 [ 0.66]
'Elixir.Enum':reverse/1 1296 0.59 286 [ 0.22]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 678 0.60 293 [ 0.43]
'Elixir.Membrane.Core.Element.State':get_and_update/3 1090 0.61 297 [ 0.27]
'Elixir.Bunch.Access':update_in/3 638 0.61 298 [ 0.47]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 206 0.62 303 [ 1.47]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 432 0.64 311 [ 0.72]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 638 0.66 321 [ 0.50]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 638 0.68 331 [ 0.52]
'Elixir.Kernel':update_in/3 638 0.68 333 [ 0.52]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 206 0.73 355 [ 1.72]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 412 0.81 397 [ 0.96]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 452 0.83 403 [ 0.89]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 226 0.85 413 [ 1.83]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 206 0.88 429 [ 2.08]
'Elixir.Enum':drop_while_list/2 864 0.97 471 [ 0.55]
'Elixir.Enumerable':'impl_for!'/1 1070 0.99 485 [ 0.45]
'Elixir.Bunch.Enum':try_reduce/3 864 1.07 524 [ 0.61]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 226 1.09 530 [ 2.35]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 432 1.11 542 [ 1.25]
maps:find/2 2386 1.21 591 [ 0.25]
'Elixir.Enumerable':reduce/3 1070 1.22 594 [ 0.56]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 1276 1.23 599 [ 0.47]
'Elixir.Enumerable.List':reduce/3 1914 1.31 638 [ 0.33]
'Elixir.Enum':reduce_while/3 1070 1.31 641 [ 0.60]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 3064 1.36 666 [ 0.22]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 432 1.42 692 [ 1.60]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 2858 1.52 741 [ 0.26]
'Elixir.Bunch.Access':get_in/2 1768 1.53 746 [ 0.42]
erlang:send/2 226 2.05 1003 [ 4.44]
'Elixir.Membrane.Core.Element.State':fetch/2 1768 2.06 1007 [ 0.57]
'Elixir.Map':get/3 4586 2.16 1054 [ 0.23]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 2652 2.34 1144 [ 0.43]
'Elixir.Access':get/2 5942 2.36 1152 [ 0.19]
'Elixir.Bunch':listify/1 6168 2.69 1314 [ 0.21]
'Elixir.Kernel':get_and_update_in/3 4380 2.82 1375 [ 0.31]
'Elixir.Access':get_and_update/3 4154 2.93 1430 [ 0.34]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 1768 3.09 1509 [ 0.85]
'Elixir.Kernel':get_in/2 5922 3.90 1905 [ 0.32]
gen_server:loop/7 226 3.91 1909 [ 8.45]
'Elixir.Access':get/3 5942 3.98 1941 [ 0.33]
'Elixir.Map':get_and_update/3 4154 8.08 3943 [ 0.95]
----------------------------------------------------------------------------------------- ------ ------- ----- [----------]
Total: 106800 100.00% 48808 [ 0.46]
****** Process <9928.4223.0> -- 0.05 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.Helper.GenServer':noreply/1 669 1.02 170 [ 0.25]
'Elixir.Membrane.Pad':get_corresponding_bin_name/1 669 1.23 205 [ 0.31]
gen_server:handle_common_reply/8 669 1.27 212 [ 0.32]
lists:keymember/3 669 1.32 221 [ 0.33]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 669 1.34 223 [ 0.33]
erlang:setelement/3 669 1.34 223 [ 0.33]
lists:member/2 669 1.40 233 [ 0.35]
'Elixir.Membrane.Pad':get_corresponding_bin_pad/1 669 1.41 236 [ 0.35]
gen_server:decode_msg/9 669 1.47 245 [ 0.37]
gen_server:try_dispatch/3 669 1.54 257 [ 0.38]
'Elixir.Membrane.Core.Bin.LinkingBuffer':'currently_linking?'/2 669 1.86 310 [ 0.46]
maps:find/2 669 1.89 316 [ 0.47]
'Elixir.Bunch':listify/1 1338 1.94 323 [ 0.24]
'Elixir.Keyword':delete_key/2 1338 2.03 339 [ 0.25]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 669 2.10 351 [ 0.52]
'Elixir.Bunch.Access':get_in/2 669 2.11 352 [ 0.53]
'Elixir.Membrane.Core.Bin.State':fetch/2 669 2.15 358 [ 0.54]
'Elixir.Enum':'member?'/2 669 2.34 391 [ 0.58]
gen_server:handle_msg/6 669 2.46 411 [ 0.61]
'Elixir.Access':get/2 2007 2.74 457 [ 0.23]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 669 2.87 479 [ 0.72]
'Elixir.Keyword':put/3 669 3.25 542 [ 0.81]
gen_server:try_dispatch/4 669 3.30 550 [ 0.82]
'Elixir.Membrane.Core.Message':set_for_pad/2 669 3.36 560 [ 0.84]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 669 4.35 726 [ 1.09]
'Elixir.Kernel':get_in/2 2007 4.44 741 [ 0.37]
'Elixir.Access':get/3 2007 5.48 914 [ 0.46]
'Elixir.Membrane.Core.Bin':handle_info/2 669 5.81 969 [ 1.45]
'Elixir.Membrane.Core.Bin.LinkingBuffer':store_or_send/3 669 6.99 1167 [ 1.74]
gen_server:loop/7 669 10.51 1754 [ 2.62]
erlang:send/2 669 14.69 2452 [ 3.67]
--------------------------------------------------------------- ----- ------- ----- [----------]
Total: 26091 100.00% 16687 [ 0.64]
****** Process <9928.4225.0> -- 0.41 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
lists:reverse/2 4 0.00 2 [ 0.50]
lists:flatten/1 206 0.05 61 [ 0.30]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 206 0.05 63 [ 0.31]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_buffer/5-fun-0-'/2 206 0.05 71 [ 0.34]
'Elixir.Membrane.Buffer.Metric':from_unit/1 206 0.05 71 [ 0.34]
'Elixir.Membrane.Core.Child.PadModel':'-update_multi/3-fun-0-'/2 206 0.05 73 [ 0.35]
'Elixir.Enum':reduce/3 206 0.05 73 [ 0.35]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 206 0.06 74 [ 0.36]
'Elixir.List':flatten/1 206 0.06 75 [ 0.36]
'Elixir.Enum':join/1 206 0.07 95 [ 0.46]
'Elixir.Membrane.Core.Child.PadModel':'update_multi!'/3 206 0.08 111 [ 0.54]
'Elixir.Bunch.Enum':try_each/2 206 0.08 111 [ 0.54]
gen_server:try_dispatch/3 380 0.08 113 [ 0.30]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-2-'/2 206 0.09 115 [ 0.56]
'Elixir.Enum':entry_to_string/1 361 0.09 116 [ 0.32]
'Elixir.Membrane.Core.Child.PadModel':apply_updates/2 206 0.09 117 [ 0.57]
'Elixir.Membrane.RTP.VP8.Depayloader':'-handle_process_list/4-fun-0-'/2 360 0.09 117 [ 0.33]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 360 0.09 118 [ 0.33]
'Elixir.Enum':'-take_random/2-fun-0-'/2 360 0.09 118 [ 0.33]
'Elixir.Keyword':get/2 380 0.09 119 [ 0.31]
queue:in/2 360 0.09 124 [ 0.34]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 360 0.09 124 [ 0.34]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 360 0.09 124 [ 0.34]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 360 0.09 125 [ 0.35]
'Elixir.Membrane.Core.InputBuffer':store/2 360 0.10 135 [ 0.38]
'Elixir.Membrane.Helper.GenServer':noreply/2 380 0.10 136 [ 0.36]
maps:merge/2 360 0.10 137 [ 0.38]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-0-'/1 360 0.11 142 [ 0.39]
'Elixir.Membrane.Core.Message':for_pad/1 380 0.11 144 [ 0.38]
gen_server:handle_common_reply/8 380 0.11 145 [ 0.38]
'Elixir.Enum':'-fun.entry_to_string/1-'/1 361 0.11 147 [ 0.41]
'Elixir.Bunch.Enum':do_try_each/2 412 0.11 150 [ 0.36]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 360 0.12 155 [ 0.43]
lists:keyfind/3 380 0.12 156 [ 0.41]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 360 0.12 158 [ 0.44]
'Elixir.Bunch.Enum':try_reduce_while/3 360 0.12 161 [ 0.45]
'Elixir.Membrane.RTP.VP8.PayloadDescriptor':get_tidykeyidx/2 360 0.12 161 [ 0.45]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 380 0.13 172 [ 0.45]
maps:remove/2 360 0.13 173 [ 0.48]
'Elixir.Membrane.RTP.VP8.PayloadDescriptor':get_temporal_level_zero_index/2 360 0.13 174 [ 0.48]
gen_server:decode_msg/9 380 0.13 177 [ 0.47]
'Elixir.Membrane.Core.Message':send/4 242 0.13 179 [ 0.74]
'Elixir.Membrane.RTP.VP8.Depayloader':handle_demand/5 380 0.14 182 [ 0.48]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_redemand/2-fun-0-'/2 360 0.14 186 [ 0.52]
erlang:max/2 776 0.15 207 [ 0.27]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 206 0.15 208 [ 1.01]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 740 0.16 215 [ 0.29]
'Elixir.Map':update/4 206 0.16 216 [ 1.05]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 740 0.16 217 [ 0.29]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 380 0.16 221 [ 0.58]
maps:keys/1 360 0.17 223 [ 0.62]
'Elixir.MapSet':put/2 360 0.17 223 [ 0.62]
'Elixir.Enumerable.MapSet':reduce/3 360 0.17 227 [ 0.63]
'Elixir.Keyword':get/3 380 0.17 231 [ 0.61]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 380 0.18 236 [ 0.62]
'Elixir.Enum':'-take_random/2-anonymous-4-'/3 360 0.18 240 [ 0.67]
'Elixir.Membrane.Core.Child.PadModel':update_multi/3 206 0.18 243 [ 1.18]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 380 0.18 247 [ 0.65]
lists:do_flatten/2 824 0.19 249 [ 0.30]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 380 0.19 251 [ 0.66]
'Elixir.MapSet':to_list/1 360 0.19 256 [ 0.71]
'Elixir.Membrane.Core.Child.PadModel':'-apply_updates/2-fun-0-'/2 412 0.19 257 [ 0.62]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 566 0.19 257 [ 0.45]
gen_server:handle_msg/6 380 0.19 257 [ 0.68]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 1100 0.19 262 [ 0.24]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 618 0.20 266 [ 0.43]
'Elixir.Membrane.RTP.VP8.Frame':flush/1 206 0.20 274 [ 1.33]
'Elixir.Enum':join/2 206 0.20 274 [ 1.33]
'Elixir.Qex':push/2 360 0.21 276 [ 0.77]
'Elixir.Access':key/2 740 0.21 280 [ 0.38]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 740 0.22 292 [ 0.39]
'Elixir.Enum':split_while/2 1100 0.22 292 [ 0.27]
'Elixir.Membrane.Core.Element.ActionHandler':handle_redemand/2 360 0.22 294 [ 0.82]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 740 0.22 295 [ 0.40]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 360 0.22 295 [ 0.82]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 360 0.22 296 [ 0.82]
'Elixir.Enum':take_random/2 360 0.22 296 [ 0.82]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 360 0.22 298 [ 0.83]
'Elixir.MapSet':delete/2 360 0.22 300 [ 0.83]
'Elixir.Enum':drop_while/2 1100 0.23 304 [ 0.28]
lists:reverse/1 1100 0.23 306 [ 0.28]
'Elixir.Membrane.RTP.VP8.Depayloader':handle_process_list/4 360 0.23 307 [ 0.85]
gen_server:try_dispatch/4 380 0.23 309 [ 0.81]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 740 0.23 316 [ 0.43]
'Elixir.Membrane.Core.InputBuffer':store/3 360 0.24 320 [ 0.89]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 1306 0.24 322 [ 0.25]
queue:out/1 1100 0.24 324 [ 0.29]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 1306 0.25 340 [ 0.26]
'Elixir.Enum':to_list/1 1306 0.25 340 [ 0.26]
'Elixir.Membrane.Core.Element':handle_info/2 380 0.26 344 [ 0.91]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 1100 0.26 348 [ 0.32]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 360 0.26 356 [ 0.99]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 380 0.27 363 [ 0.96]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 360 0.27 365 [ 1.01]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 206 0.28 381 [ 1.85]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 360 0.28 383 [ 1.06]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 1480 0.29 384 [ 0.26]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 740 0.29 392 [ 0.53]
'Elixir.Bunch.Access':get_and_update_in/3 740 0.30 397 [ 0.54]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 1100 0.30 406 [ 0.37]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 380 0.30 407 [ 1.07]
'Elixir.Enum':map/2 1512 0.31 413 [ 0.27]
'Elixir.Membrane.RTP.VP8.PayloadDescriptor':get_picture_id/2 360 0.31 414 [ 1.15]
'Elixir.Membrane.Core.Element.DemandHandler':handle_redemand/2 720 0.32 433 [ 0.60]
'Elixir.Map':'update!'/3 360 0.32 433 [ 1.20]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 380 0.33 438 [ 1.15]
'Elixir.Membrane.RTP.VP8.Depayloader':handle_process/4 360 0.33 450 [ 1.25]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 740 0.34 451 [ 0.61]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 720 0.34 454 [ 0.63]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 1306 0.34 458 [ 0.35]
'Elixir.Membrane.RTP.VP8.Frame':do_parse/5 360 0.35 468 [ 1.30]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 360 0.36 487 [ 1.35]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 360 0.37 491 [ 1.36]
'Elixir.Membrane.Pad.Data':fetch/2 1080 0.38 513 [ 0.47]
erlang:'++'/2 1460 0.38 513 [ 0.35]
'Elixir.Membrane.RTP.VP8.Depayloader':parse_buffer/2 360 0.39 519 [ 1.44]
'Elixir.Membrane.RTP.VP8.Frame':parse/2 360 0.39 521 [ 1.45]
'Elixir.Membrane.RTP.VP8.PayloadDescriptor':get_extended_control_bits/2 360 0.39 530 [ 1.47]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 740 0.40 535 [ 0.72]
'Elixir.Bunch.Enum':chunk_by_prev/3 1100 0.40 543 [ 0.49]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 1500 0.41 553 [ 0.37]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 1100 0.45 605 [ 0.55]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 2426 0.45 607 [ 0.25]
'Elixir.Bunch.Struct':update_in/3 740 0.45 612 [ 0.83]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 360 0.46 622 [ 1.73]
erlang:iolist_to_binary/1 206 0.47 629 [ 3.05]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 1306 0.47 630 [ 0.48]
'Elixir.Membrane.Pad.Data':get_and_update/3 2580 0.47 631 [ 0.24]
'Elixir.Bunch.Access':update_in/3 1306 0.47 638 [ 0.49]
'Elixir.Enumerable':impl_for/1 2920 0.49 665 [ 0.23]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 380 0.49 665 [ 1.75]
'Elixir.Membrane.Core.InputBuffer':do_take/2 740 0.52 698 [ 0.94]
'Elixir.Kernel':update_in/3 1306 0.53 710 [ 0.54]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 1306 0.54 721 [ 0.55]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 1100 0.54 733 [ 0.67]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 1480 0.55 740 [ 0.50]
'Elixir.Bunch.Access':put_in/3 1480 0.55 746 [ 0.50]
'Elixir.Enum':split_while_list/3 1460 0.56 750 [ 0.51]
'Elixir.Membrane.Core.Element.State':get_and_update/3 2786 0.57 770 [ 0.28]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 1100 0.58 783 [ 0.71]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 1306 0.59 792 [ 0.61]
'Elixir.Access':'-key/2-fun-0-'/5 740 0.60 802 [ 1.08]
'Elixir.Qex':pop/1 1100 0.60 802 [ 0.73]
'Elixir.Bunch.Enum':try_reduce/3 2200 0.61 824 [ 0.37]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 1666 0.62 838 [ 0.50]
'Elixir.Kernel':put_in/3 1480 0.64 860 [ 0.58]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 740 0.66 882 [ 1.19]
'Elixir.Enum':drop_while_list/2 2046 0.67 898 [ 0.44]
'Elixir.Enum':reverse/1 3712 0.71 955 [ 0.26]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 2220 0.72 975 [ 0.44]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 1100 0.73 983 [ 0.89]
erlang:send/2 242 0.76 1019 [ 4.21]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 380 0.77 1036 [ 2.73]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 1306 0.78 1047 [ 0.80]
'Elixir.Enum':reduce_while/3 2560 0.91 1222 [ 0.48]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 1100 0.92 1244 [ 1.13]
'Elixir.Enumerable':'impl_for!'/1 2920 0.93 1253 [ 0.43]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 1480 0.94 1268 [ 0.86]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 740 0.98 1318 [ 1.78]
'Elixir.Membrane.RTP.VP8.PayloadDescriptor':parse_payload_descriptor/1 360 1.01 1359 [ 3.77]
maps:find/2 6086 1.21 1629 [ 0.27]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 3179 1.22 1639 [ 0.52]
'Elixir.Enumerable':reduce/3 2920 1.30 1754 [ 0.60]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 8152 1.34 1796 [ 0.22]
'Elixir.Enumerable.List':reduce/3 5306 1.42 1915 [ 0.36]
'Elixir.Bunch.Access':get_in/2 5006 1.56 2095 [ 0.42]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 1100 1.56 2101 [ 1.91]
'Elixir.Membrane.Core.Element.State':fetch/2 5006 1.64 2210 [ 0.44]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 7792 1.70 2288 [ 0.29]
'Elixir.Map':get/3 12038 2.27 3050 [ 0.25]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 7586 2.43 3271 [ 0.43]
'Elixir.Access':get/2 16478 2.49 3345 [ 0.20]
'Elixir.Bunch':listify/1 17218 2.92 3926 [ 0.23]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 5006 3.00 4034 [ 0.81]
gen_server:loop/7 380 3.01 4053 [ 10.67]
'Elixir.Access':get_and_update/3 10938 3.14 4221 [ 0.39]
'Elixir.Kernel':get_and_update_in/3 11678 3.26 4379 [ 0.37]
'Elixir.Access':get/3 16478 4.00 5376 [ 0.33]
'Elixir.Kernel':get_in/2 16098 4.11 5533 [ 0.34]
'Elixir.Map':get_and_update/3 10938 8.02 10789 [ 0.99]
----------------------------------------------------------------------------------------- ------ ------- ------ [----------]
Total: 286329 100.00% 134518 [ 0.47]
****** Process <9928.4226.0> -- 0.60 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Heap':meld/3 360 0.05 102 [ 0.28]
'Elixir.Heap':pair/2 360 0.05 102 [ 0.28]
'Elixir.Membrane.Time':second/0 360 0.05 102 [ 0.28]
'Elixir.Membrane.RTP.JitterBuffer':'-record_to_action/2-fun-0-'/1 360 0.05 104 [ 0.29]
'Elixir.Enum':'-take_random/2-fun-0-'/2 360 0.06 108 [ 0.30]
'Elixir.Membrane.Buffer.Metric':from_unit/1 360 0.06 111 [ 0.31]
gen_server:try_dispatch/3 396 0.06 112 [ 0.28]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 360 0.06 114 [ 0.32]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_buffer/5-fun-0-'/2 360 0.06 115 [ 0.32]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':shift_ordered/1 360 0.06 116 [ 0.32]
'Elixir.Ratio':'div'/2 360 0.06 117 [ 0.33]
'Elixir.Membrane.RTP.JitterBuffer':'-handle_process_list/4-fun-0-'/2 360 0.06 121 [ 0.34]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 360 0.06 123 [ 0.34]
lists:flatten/1 360 0.06 125 [ 0.35]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 360 0.06 127 [ 0.35]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-0-'/1 360 0.07 128 [ 0.36]
'Elixir.Kernel':'-get_and_update_in/3-fun-0-'/3 360 0.07 128 [ 0.36]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 360 0.07 128 [ 0.36]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-2-'/2 360 0.07 130 [ 0.36]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 360 0.07 134 [ 0.37]
gen_server:decode_msg/9 396 0.07 136 [ 0.34]
'Elixir.Membrane.RTP.JitterBuffer':handle_demand/5 396 0.07 137 [ 0.35]
queue:in/2 360 0.07 140 [ 0.39]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 360 0.07 140 [ 0.39]
'Elixir.Enum':reduce/3 360 0.07 140 [ 0.39]
'Elixir.Membrane.Core.InputBuffer':store/2 360 0.07 142 [ 0.39]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 396 0.07 144 [ 0.36]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_redemand/2-fun-0-'/2 360 0.07 145 [ 0.40]
'Elixir.Membrane.Core.Child.PadModel':'-update_multi/3-fun-0-'/2 360 0.08 148 [ 0.41]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':'-shift_older_than/2-fun-0-'/3 360 0.08 153 [ 0.42]
'Elixir.Membrane.RTP.JitterBuffer':'-fun.record_to_action/2-'/2 360 0.08 153 [ 0.42]
gen_server:handle_common_reply/8 396 0.08 153 [ 0.39]
'Elixir.List':flatten/1 360 0.08 155 [ 0.43]
'Elixir.Membrane.Helper.GenServer':noreply/2 396 0.08 158 [ 0.40]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 360 0.08 158 [ 0.44]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':'is_fresh_packet?'/2 360 0.08 158 [ 0.44]
'Elixir.Membrane.Core.Child.PadModel':apply_updates/2 360 0.08 160 [ 0.44]
'Elixir.Ratio':'/'/2 360 0.08 162 [ 0.45]
'Elixir.MapSet':'member?'/2 360 0.09 167 [ 0.46]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':'-shift_ordered/1-fun-0-'/2 360 0.09 168 [ 0.47]
'Elixir.Keyword':get/2 396 0.09 172 [ 0.43]
maps:merge/2 360 0.09 172 [ 0.48]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 360 0.09 175 [ 0.49]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':update_end_index/2 360 0.09 176 [ 0.49]
'Elixir.Membrane.Core.Message':for_pad/1 396 0.09 177 [ 0.45]
'Elixir.Ratio':trunc/1 360 0.09 185 [ 0.51]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':bump_prev_index/1 360 0.10 188 [ 0.52]
'Elixir.Enum':map_reduce/3 360 0.10 196 [ 0.54]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':shift_while/2 720 0.10 198 [ 0.28]
'Elixir.Bunch.Enum':try_reduce_while/3 360 0.11 208 [ 0.58]
'Elixir.Membrane.Core.Child.PadModel':'update_multi!'/3 360 0.11 213 [ 0.59]
'Elixir.Ratio':mult/2 360 0.11 216 [ 0.60]
'Elixir.Bunch.Enum':try_each/2 360 0.11 216 [ 0.60]
lists:keyfind/3 396 0.11 220 [ 0.56]
'Elixir.Enum':min_sort_fun/1 720 0.12 227 [ 0.32]
'Elixir.Enum':'-take_random/2-anonymous-4-'/3 360 0.12 235 [ 0.65]
'Elixir.Membrane.RTP.JitterBuffer.State':get_and_update/3 720 0.12 238 [ 0.33]
maps:keys/1 360 0.12 242 [ 0.67]
'Elixir.Membrane.Time':as_seconds/1 360 0.13 246 [ 0.68]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':'-from_which_cycle/2-fun-0-'/1 1080 0.13 246 [ 0.23]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 396 0.13 247 [ 0.62]
erlang:system_time/0 360 0.13 249 [ 0.69]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 720 0.13 250 [ 0.35]
'Elixir.Enumerable.MapSet':reduce/3 360 0.13 251 [ 0.70]
erlang:max/2 792 0.13 251 [ 0.32]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 396 0.13 253 [ 0.64]
'Elixir.Membrane.Core.Message':send/4 396 0.13 254 [ 0.64]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':shift_older_than/2 360 0.13 260 [ 0.72]
'Elixir.Bunch.Struct':'-put_in/3-anonymous-0-'/1 720 0.13 264 [ 0.37]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':first_record_timestamp/1 360 0.14 268 [ 0.74]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 756 0.14 272 [ 0.36]
'Elixir.Keyword':get/3 396 0.14 273 [ 0.69]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 396 0.14 276 [ 0.70]
'Elixir.Ratio':remove_denominator_if_integer/1 1080 0.14 279 [ 0.26]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 360 0.14 283 [ 0.79]
gen_server:handle_msg/6 396 0.14 284 [ 0.72]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 396 0.15 286 [ 0.72]
'Elixir.MapSet':to_list/1 360 0.15 289 [ 0.80]
'Elixir.Membrane.RTP.JitterBuffer':'-record_to_action/2-fun-1-'/1 1080 0.15 289 [ 0.27]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 360 0.15 289 [ 0.80]
'Elixir.Enum':min_by/2 720 0.15 290 [ 0.40]
erts_internal:time_unit/0 1080 0.15 291 [ 0.27]
'Elixir.Ratio':'<'/2 1080 0.15 292 [ 0.27]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 756 0.15 293 [ 0.39]
'Elixir.Ratio':abs/1 1080 0.15 299 [ 0.28]
gen_server:try_dispatch/4 396 0.15 302 [ 0.76]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 1116 0.16 305 [ 0.27]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 360 0.16 306 [ 0.85]
'Elixir.Qex':push/2 360 0.16 307 [ 0.85]
'Elixir.Membrane.Core.InputBuffer':store/3 360 0.16 313 [ 0.87]
'Elixir.Membrane.Core.Element.ActionHandler':handle_redemand/2 360 0.16 317 [ 0.88]
'Elixir.Enum':take_random/2 360 0.16 322 [ 0.89]
'Elixir.Map':'update!'/3 360 0.16 323 [ 0.90]
'Elixir.Heap':pop/1 360 0.17 326 [ 0.91]
'Elixir.Bunch.Struct':put_in/3 360 0.17 328 [ 0.91]
'Elixir.Bunch.Enum':do_try_each/2 720 0.17 328 [ 0.46]
'Elixir.Ratio':'=='/2 1080 0.17 330 [ 0.31]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 360 0.17 330 [ 0.92]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 360 0.17 343 [ 0.95]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':insert_buffer/2 360 0.18 344 [ 0.96]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 756 0.18 346 [ 0.46]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 756 0.18 354 [ 0.47]
'Elixir.Membrane.RTP.JitterBuffer.Record':new/2 360 0.18 357 [ 0.99]
maps:remove/2 720 0.18 362 [ 0.50]
'Elixir.Membrane.Core.Child.PadModel':update_multi/3 360 0.19 365 [ 1.01]
queue:out/1 1116 0.19 369 [ 0.33]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 360 0.19 372 [ 1.03]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 396 0.19 376 [ 0.95]
'Elixir.MapSet':put/2 720 0.19 377 [ 0.52]
'Elixir.Enum':drop_while/2 1116 0.19 381 [ 0.34]
'Elixir.Enum':split_while/2 1116 0.19 381 [ 0.34]
'Elixir.Map':update/4 360 0.20 384 [ 1.07]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 756 0.20 385 [ 0.51]
lists:reverse/1 1116 0.20 387 [ 0.35]
'Elixir.Membrane.Core.Child.PadModel':'-apply_updates/2-fun-0-'/2 720 0.20 398 [ 0.55]
'Elixir.Enum':to_list/1 1476 0.20 401 [ 0.27]
'Elixir.Membrane.RTP.JitterBuffer':handle_process_list/4 360 0.20 401 [ 1.11]
'Elixir.Heap':push/2 360 0.21 402 [ 1.12]
erlang:monotonic_time/0 720 0.21 405 [ 0.56]
'Elixir.Membrane.RTP.JitterBuffer':set_timer/1 360 0.21 406 [ 1.13]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 396 0.21 410 [ 1.04]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 360 0.22 430 [ 1.19]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 1476 0.22 430 [ 0.29]
'Elixir.Enum':'-map_reduce/3-lists^mapfoldl/2-0-'/3 720 0.22 433 [ 0.60]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 1476 0.22 435 [ 0.29]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 756 0.22 438 [ 0.58]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':from_which_cycle/2 360 0.23 444 [ 1.23]
erlang:'=<'/2 1440 0.23 451 [ 0.31]
'Elixir.Membrane.Core.Element':handle_info/2 396 0.23 455 [ 1.15]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 396 0.24 464 [ 1.17]
'Elixir.Heap':root/1 1800 0.24 468 [ 0.26]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 1116 0.24 472 [ 0.42]
'Elixir.Membrane.Time':vm_time/0 360 0.24 476 [ 1.32]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 1548 0.25 481 [ 0.31]
'Elixir.Membrane.Core.Element.DemandHandler':handle_redemand/2 720 0.25 488 [ 0.68]
'Elixir.Ratio':'eq?'/2 1080 0.25 491 [ 0.45]
'Elixir.Ratio':compare/2 2160 0.25 495 [ 0.23]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 1080 0.25 496 [ 0.46]
'Elixir.System':normalize_time_unit/1 2160 0.25 497 [ 0.23]
'Elixir.Enum':min_by/4 720 0.26 503 [ 0.70]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 360 0.26 512 [ 1.42]
'Elixir.Membrane.Pad.Data':fetch/2 1080 0.26 515 [ 0.48]
'Elixir.Enum':'-aggregate_by/4-fun-0-'/2 720 0.27 527 [ 0.73]
'Elixir.Ratio':normalize_denom_num/2 1080 0.27 535 [ 0.50]
'Elixir.Ratio':'lt?'/2 1080 0.27 538 [ 0.50]
'Elixir.Bunch.Access':get_and_update_in/3 756 0.28 542 [ 0.72]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 1116 0.28 546 [ 0.49]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 360 0.28 548 [ 1.52]
'Elixir.MapSet':delete/2 720 0.29 567 [ 0.79]
'Elixir.Membrane.Time':monotonic_time/0 720 0.29 576 [ 0.80]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 756 0.29 578 [ 0.76]
lists:do_flatten/2 1440 0.30 587 [ 0.41]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 756 0.30 593 [ 0.78]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 720 0.30 597 [ 0.83]
'Elixir.Enum':map/2 1836 0.30 597 [ 0.33]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 1116 0.32 635 [ 0.57]
'Elixir.Access':key/2 1476 0.34 664 [ 0.45]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 360 0.35 682 [ 1.89]
'Elixir.Bunch.Enum':chunk_by_prev/3 1116 0.35 683 [ 0.61]
'Elixir.Enum':aggregate_by/4 720 0.36 707 [ 0.98]
'Elixir.Membrane.RTP.JitterBuffer':handle_process/4 360 0.36 715 [ 1.99]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 1476 0.37 716 [ 0.49]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 2628 0.37 726 [ 0.28]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 360 0.37 735 [ 2.04]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 396 0.38 744 [ 1.88]
erlang:'++'/2 1836 0.39 757 [ 0.41]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':do_insert_buffer/3 360 0.39 760 [ 2.11]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 1116 0.39 764 [ 0.68]
'Elixir.Enumerable':impl_for/1 2952 0.39 770 [ 0.26]
'Elixir.Bunch.Struct':update_in/3 756 0.40 793 [ 1.05]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 1476 0.41 799 [ 0.54]
'Elixir.Enum':'-aggregate_by/4-lists^foldl/2-0-'/3 2160 0.41 801 [ 0.37]
'Elixir.Ratio':'<|>'/2 1080 0.41 813 [ 0.75]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 2592 0.42 820 [ 0.32]
'Elixir.Membrane.Core.InputBuffer':do_take/2 756 0.42 830 [ 1.10]
'Elixir.Membrane.Pad.Data':get_and_update/3 2628 0.43 847 [ 0.32]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 1512 0.43 849 [ 0.56]
'Elixir.Bunch.Access':update_in/3 1476 0.43 852 [ 0.58]
'Elixir.System':convert_time_unit/3 1080 0.44 853 [ 0.79]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 1476 0.45 877 [ 0.59]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 1116 0.46 910 [ 0.82]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':add_record/2 360 0.47 912 [ 2.53]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 1476 0.47 921 [ 0.62]
'Elixir.Bunch.Enum':try_reduce/3 2232 0.47 925 [ 0.41]
'Elixir.Membrane.RTP.JitterBuffer':send_buffers/1 360 0.48 934 [ 2.59]
'Elixir.Membrane.Core.Element.State':get_and_update/3 2988 0.48 944 [ 0.32]
'Elixir.Enum':split_while_list/3 1476 0.49 952 [ 0.64]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 1836 0.51 991 [ 0.54]
'Elixir.Qex':pop/1 1116 0.51 993 [ 0.89]
'Elixir.Kernel':update_in/3 1476 0.51 995 [ 0.67]
'Elixir.Bunch.Access':put_in/3 1872 0.52 1014 [ 0.54]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 756 0.52 1015 [ 1.34]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 396 0.53 1042 [ 2.63]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 1116 0.54 1057 [ 0.95]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':shift/1 360 0.55 1074 [ 2.98]
'Elixir.Enum':drop_while_list/2 2232 0.56 1090 [ 0.49]
'Elixir.Enum':'-aggregate_by/4-fun-1-'/4 1440 0.56 1101 [ 0.76]
'Elixir.Membrane.RTP.JitterBuffer':record_to_action/2 360 0.56 1102 [ 3.06]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':shift_while/3 1080 0.57 1111 [ 1.03]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 2268 0.59 1156 [ 0.51]
'Elixir.Enum':reverse/1 4428 0.63 1237 [ 0.28]
'Elixir.Enum':reduce_while/3 2592 0.66 1295 [ 0.50]
'Elixir.Ratio':simplify/1 1080 0.70 1369 [ 1.27]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 756 0.70 1381 [ 1.83]
'Elixir.Enumerable':'impl_for!'/1 2952 0.72 1404 [ 0.48]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 1476 0.72 1406 [ 0.95]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 1512 0.74 1449 [ 0.96]
'Elixir.Membrane.RTP.JitterBuffer':update_jitter/2 360 0.80 1565 [ 4.35]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 1116 0.81 1583 [ 1.42]
'Elixir.Kernel':put_in/3 2592 0.86 1678 [ 0.65]
'Elixir.Access':'-key/2-fun-0-'/5 1476 0.92 1798 [ 1.22]
'Elixir.Enumerable':reduce/3 2952 1.00 1957 [ 0.66]
erlang:convert_time_unit/3 1080 1.00 1967 [ 1.82]
erlang:send/2 396 1.09 2137 [ 5.40]
'Elixir.Bunch.Access':get_in/2 5256 1.16 2278 [ 0.43]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 1116 1.18 2317 [ 2.08]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 8244 1.20 2346 [ 0.28]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 4032 1.22 2384 [ 0.59]
'Elixir.Enumerable.List':reduce/3 5508 1.22 2392 [ 0.43]
'Elixir.Membrane.Core.Element.State':fetch/2 5256 1.25 2444 [ 0.46]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 9324 1.36 2675 [ 0.29]
maps:find/2 6336 1.39 2729 [ 0.43]
'Elixir.Ratio':gcd/2 11940 1.42 2793 [ 0.23]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 7884 1.72 3377 [ 0.43]
'Elixir.Access':get/2 17244 1.82 3559 [ 0.21]
'Elixir.Bunch':listify/1 18720 2.18 4270 [ 0.23]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 5256 2.25 4415 [ 0.84]
'Elixir.Map':get/3 15228 2.35 4608 [ 0.30]
'Elixir.Kernel':get_in/2 16848 2.89 5666 [ 0.34]
gen_server:loop/7 396 3.03 5947 [ 15.02]
'Elixir.Access':get/3 17244 3.06 6002 [ 0.35]
'Elixir.Kernel':get_and_update_in/3 14508 3.10 6072 [ 0.42]
'Elixir.Access':get_and_update/3 13032 3.24 6344 [ 0.49]
'Elixir.Map':get_and_update/3 13032 7.84 15366 [ 1.18]
----------------------------------------------------------------------------------------- ------ ------- ------ [----------]
Total: 374928 100.00% 196031 [ 0.52]
****** Process <9928.4227.0> -- 0.27 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Ratio':remove_denominator_if_integer/1 10 0.00 2 [ 0.20]
'Elixir.Ratio':floor/1 10 0.00 3 [ 0.30]
'Elixir.Membrane.Core.Element.ActionHandler':handle_event/3 10 0.00 3 [ 0.30]
'Elixir.Ratio':'/'/2 10 0.00 4 [ 0.40]
'Elixir.Ratio':'<'/2 10 0.00 4 [ 0.40]
'Elixir.Ratio':abs/1 10 0.00 4 [ 0.40]
'Elixir.Ratio':'eq?'/2 10 0.00 4 [ 0.40]
'Elixir.Membrane.RTCP.Receiver':'-send_fir/1-fun-0-'/1 10 0.00 4 [ 0.40]
'Elixir.Membrane.Core.Component':action_handler/1 10 0.00 4 [ 0.40]
'Elixir.Ratio':'+'/2 20 0.01 5 [ 0.25]
'Elixir.Ratio':'=='/2 10 0.01 5 [ 0.50]
'Elixir.Ratio':compare/2 20 0.01 5 [ 0.25]
'Elixir.Ratio':normalize_denom_num/2 10 0.01 5 [ 0.50]
'Elixir.Membrane.RTCP.Receiver':handle_tick/3 10 0.01 5 [ 0.50]
'Elixir.Ratio':'lt?'/2 10 0.01 6 [ 0.60]
'Elixir.Ratio':gcd/2 20 0.01 7 [ 0.35]
'Elixir.Membrane.Time':to_milliseconds/1 10 0.01 8 [ 0.80]
'Elixir.Ratio':'<|>'/2 10 0.01 11 [ 1.10]
'Elixir.Membrane.RTCP.Receiver':handle_demand/5 36 0.01 11 [ 0.31]
'Elixir.Membrane.EventProtocol.Any':'async?'/1 37 0.01 11 [ 0.30]
'Elixir.Membrane.EventProtocol.Any':'sticky?'/1 37 0.01 11 [ 0.30]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 36 0.01 12 [ 0.33]
'Elixir.Membrane.Event':'event?'/1 10 0.01 12 [ 1.20]
'Elixir.Membrane.Core.Element.EventController':check_sync/2 37 0.01 13 [ 0.35]
'Elixir.Membrane.Core.Element.EventController':exec_handle_event/3 37 0.01 13 [ 0.35]
'Elixir.Membrane.Core.Element.EventController':handle_special_event/3 37 0.02 14 [ 0.38]
'Elixir.Membrane.Event':'async?'/1 37 0.02 14 [ 0.38]
'Elixir.Map':'update!'/3 10 0.02 15 [ 1.50]
'Elixir.Ratio':simplify/1 10 0.02 16 [ 1.60]
'Elixir.Membrane.Core.TimerController':'-handle_tick/2-fun-2-'/1 10 0.02 17 [ 1.70]
'Elixir.Membrane.Event':'sticky?'/1 37 0.02 18 [ 0.49]
'Elixir.Membrane.Core.Child.PadModel':'assert_instance!'/2 37 0.02 19 [ 0.51]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-6-'/3 37 0.02 21 [ 0.57]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 36 0.02 22 [ 0.61]
'Elixir.Membrane.EventProtocol':impl_for/1 84 0.02 22 [ 0.26]
'Elixir.Membrane.Core.Element.EventController':'buffers_before_event_present?'/1 37 0.03 23 [ 0.62]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 36 0.03 24 [ 0.67]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 36 0.03 25 [ 0.69]
'Elixir.Membrane.Core.Element.ActionHandler':send_event/3 10 0.03 26 [ 2.60]
'Elixir.Membrane.EventProtocol':'async?'/1 37 0.03 26 [ 0.70]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 36 0.03 27 [ 0.75]
'Elixir.Membrane.Core.TimerController':handle_tick/2 10 0.04 36 [ 3.60]
'Elixir.Membrane.RTCP.Receiver':send_fir/1 10 0.04 37 [ 3.70]
'Elixir.Membrane.EventProtocol':'sticky?'/1 37 0.04 37 [ 1.00]
'Elixir.Membrane.Core.Element.EventController':'-do_exec_handle_event/4-fun-0-'/1 37 0.04 38 [ 1.03]
erlang:send_after/4 10 0.05 40 [ 4.00]
'Elixir.Membrane.Core.Element.EventController':do_exec_handle_event/4 37 0.05 42 [ 1.14]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 36 0.05 46 [ 1.28]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 36 0.05 47 [ 1.31]
'Elixir.Membrane.Core.Timer':tick/1 10 0.05 47 [ 4.70]
'Elixir.Membrane.EventProtocol':'impl_for!'/1 74 0.05 47 [ 0.64]
'Elixir.Membrane.Core.Element.EventController':exec_handle_event/4 37 0.06 49 [ 1.32]
'Elixir.Membrane.Core.Element.EventController':handle_event/3 37 0.07 61 [ 1.65]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 36 0.07 62 [ 1.72]
'Elixir.Membrane.Time':to_ntp_timestamp/1 37 0.11 101 [ 2.73]
'Elixir.Membrane.RTCP.Receiver':handle_event/4 37 0.11 102 [ 2.76]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 360 0.12 108 [ 0.30]
'Elixir.Membrane.Buffer.Metric':from_unit/1 360 0.13 111 [ 0.31]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 360 0.13 115 [ 0.32]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 360 0.13 119 [ 0.33]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_buffer/5-fun-0-'/2 360 0.14 121 [ 0.34]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 360 0.14 121 [ 0.34]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 396 0.14 122 [ 0.31]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 360 0.14 124 [ 0.34]
erlang:max/2 432 0.14 124 [ 0.29]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 360 0.14 125 [ 0.35]
gen_server:try_dispatch/3 443 0.14 126 [ 0.28]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 360 0.15 129 [ 0.36]
'Elixir.Membrane.RTCP.Receiver':'-handle_process_list/4-fun-0-'/2 360 0.15 130 [ 0.36]
'Elixir.Membrane.Core.InputBuffer':store/2 360 0.15 130 [ 0.36]
lists:flatten/1 360 0.15 131 [ 0.36]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 396 0.15 132 [ 0.33]
queue:in/2 360 0.15 133 [ 0.37]
'Elixir.Keyword':get/2 433 0.15 133 [ 0.31]
'Elixir.Membrane.Core.Child.PadModel':'-update_multi/3-fun-0-'/2 360 0.15 133 [ 0.37]
'Elixir.Membrane.RTCP.Receiver':handle_process/4 360 0.15 135 [ 0.38]
'Elixir.Enum':reduce/3 360 0.15 135 [ 0.38]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 396 0.16 141 [ 0.36]
'Elixir.List':flatten/1 360 0.16 144 [ 0.40]
maps:merge/2 397 0.16 146 [ 0.37]
'Elixir.Membrane.Helper.GenServer':noreply/2 443 0.17 152 [ 0.34]
gen_server:decode_msg/9 443 0.17 155 [ 0.35]
gen_server:handle_common_reply/8 443 0.17 155 [ 0.35]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 542 0.18 156 [ 0.29]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 397 0.18 161 [ 0.41]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 396 0.18 163 [ 0.41]
'Elixir.Membrane.Core.Child.PadModel':apply_updates/2 360 0.19 168 [ 0.47]
'Elixir.Access':key/2 396 0.19 169 [ 0.43]
'Elixir.Membrane.Core.Message':for_pad/1 433 0.19 169 [ 0.39]
'Elixir.Bunch.Enum':try_reduce_while/3 360 0.20 181 [ 0.50]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 396 0.21 187 [ 0.47]
lists:keyfind/3 433 0.22 199 [ 0.46]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 766 0.23 201 [ 0.26]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 792 0.23 201 [ 0.25]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 766 0.23 203 [ 0.27]
'Elixir.Membrane.Core.Child.PadModel':'update_multi!'/3 360 0.23 205 [ 0.57]
'Elixir.Bunch.Enum':try_each/2 360 0.23 206 [ 0.57]
'Elixir.Bunch.Access':get_and_update_in/3 396 0.24 213 [ 0.54]
'Elixir.Enum':split_while/2 803 0.24 214 [ 0.27]
lists:reverse/1 803 0.25 224 [ 0.28]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 840 0.26 229 [ 0.27]
queue:out/1 756 0.26 233 [ 0.31]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 443 0.26 235 [ 0.53]
'Elixir.Membrane.RTCP.Receiver':handle_process_list/4 360 0.27 242 [ 0.67]
'Elixir.Membrane.Core.Message':send/4 406 0.27 242 [ 0.60]
'Elixir.Enum':drop_while/2 803 0.28 245 [ 0.31]
'Elixir.Keyword':get/3 433 0.28 250 [ 0.58]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 720 0.28 252 [ 0.35]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 360 0.29 256 [ 0.71]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 396 0.29 258 [ 0.65]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 803 0.29 260 [ 0.32]
gen_server:handle_msg/6 443 0.30 266 [ 0.60]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 360 0.31 271 [ 0.75]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 360 0.31 274 [ 0.76]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 396 0.31 279 [ 0.70]
'Elixir.Enum':to_list/1 1163 0.32 281 [ 0.24]
'Elixir.Membrane.Core.InputBuffer':store/3 360 0.32 285 [ 0.79]
erlang:'++'/2 803 0.32 288 [ 0.36]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 360 0.34 298 [ 0.83]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 803 0.34 299 [ 0.37]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 396 0.34 300 [ 0.76]
'Elixir.Bunch.Enum':do_try_each/2 720 0.34 306 [ 0.42]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 360 0.35 307 [ 0.85]
'Elixir.Qex':push/2 360 0.35 310 [ 0.86]
'Elixir.Membrane.Core.Child.PadModel':update_multi/3 360 0.37 331 [ 0.92]
'Elixir.Membrane.Core.Element':handle_info/2 443 0.39 347 [ 0.78]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 360 0.40 352 [ 0.98]
'Elixir.Bunch.Struct':update_in/3 396 0.41 365 [ 0.92]
gen_server:try_dispatch/4 443 0.43 381 [ 0.86]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 1558 0.43 382 [ 0.25]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 766 0.44 389 [ 0.51]
'Elixir.Bunch.Access':put_in/3 792 0.44 393 [ 0.50]
'Elixir.Bunch.Enum':chunk_by_prev/3 803 0.45 398 [ 0.50]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 360 0.46 410 [ 1.14]
'Elixir.Membrane.Core.InputBuffer':do_take/2 396 0.47 413 [ 1.04]
'Elixir.Map':update/4 360 0.47 413 [ 1.15]
'Elixir.Enum':split_while_list/3 803 0.47 416 [ 0.52]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 766 0.47 417 [ 0.54]
'Elixir.Enum':map/2 1116 0.48 425 [ 0.38]
'Elixir.Access':'-key/2-fun-0-'/5 396 0.48 430 [ 1.09]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 792 0.48 430 [ 0.54]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 433 0.49 431 [ 1.00]
'Elixir.Enumerable':impl_for/1 1919 0.49 438 [ 0.23]
'Elixir.Qex':pop/1 756 0.50 446 [ 0.59]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 803 0.51 449 [ 0.56]
'Elixir.Kernel':put_in/3 792 0.52 460 [ 0.58]
'Elixir.Membrane.Pad.Data':fetch/2 1080 0.52 460 [ 0.43]
'Elixir.Membrane.Pad.Data':get_and_update/3 1548 0.52 466 [ 0.30]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 803 0.54 482 [ 0.60]
lists:do_flatten/2 1440 0.54 483 [ 0.34]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 360 0.55 489 [ 1.36]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 396 0.55 492 [ 1.24]
'Elixir.Membrane.Core.Child.PadModel':'-apply_updates/2-fun-0-'/2 720 0.56 493 [ 0.68]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 756 0.56 493 [ 0.65]
'Elixir.Membrane.Core.Element.State':get_and_update/3 1918 0.56 497 [ 0.26]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 1080 0.57 509 [ 0.47]
'Elixir.Enum':reverse/1 2288 0.58 516 [ 0.23]
'Elixir.Bunch.Access':update_in/3 1126 0.59 523 [ 0.46]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 766 0.61 541 [ 0.71]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 766 0.61 543 [ 0.71]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 360 0.62 553 [ 1.54]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 1262 0.64 569 [ 0.45]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 1126 0.65 575 [ 0.51]
'Elixir.Enum':drop_while_list/2 1569 0.67 599 [ 0.38]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 360 0.68 601 [ 1.67]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 360 0.68 606 [ 1.68]
'Elixir.Bunch.Enum':try_reduce/3 1559 0.69 617 [ 0.40]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 1126 0.71 629 [ 0.56]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 396 0.74 660 [ 1.67]
'Elixir.Kernel':update_in/3 1126 0.76 678 [ 0.60]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 720 0.77 685 [ 0.95]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 792 0.85 758 [ 0.96]
'Elixir.Enum':reduce_while/3 1919 0.96 856 [ 0.45]
'Elixir.Enumerable':'impl_for!'/1 1919 0.99 879 [ 0.46]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 803 1.00 886 [ 1.10]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 433 1.09 965 [ 2.23]
'Elixir.Enumerable':reduce/3 1919 1.18 1047 [ 0.55]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 2232 1.22 1085 [ 0.49]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 5384 1.32 1168 [ 0.22]
'Elixir.Enumerable.List':reduce/3 3405 1.34 1189 [ 0.35]
maps:find/2 4260 1.43 1269 [ 0.30]
'Elixir.Bunch.Access':get_in/2 3180 1.49 1322 [ 0.42]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 5125 1.58 1400 [ 0.27]
'Elixir.Membrane.Core.Element.State':fetch/2 3180 1.62 1438 [ 0.45]
erlang:send/2 406 1.86 1649 [ 4.06]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 803 1.86 1650 [ 2.05]
'Elixir.Map':get/3 8058 2.27 2016 [ 0.25]
'Elixir.Access':get/2 10656 2.32 2060 [ 0.19]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 4728 2.33 2067 [ 0.44]
'Elixir.Bunch':listify/1 10978 2.69 2389 [ 0.22]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 3180 2.92 2589 [ 0.81]
'Elixir.Kernel':get_and_update_in/3 7698 2.98 2650 [ 0.34]
'Elixir.Access':get_and_update/3 7302 3.05 2704 [ 0.37]
gen_server:loop/7 443 3.68 3267 [ 7.37]
'Elixir.Kernel':get_in/2 10620 3.90 3465 [ 0.33]
'Elixir.Access':get/3 10656 4.06 3607 [ 0.34]
'Elixir.Map':get_and_update/3 7302 8.13 7221 [ 0.99]
----------------------------------------------------------------------------------------- ------ ------- ----- [----------]
Total: 191758 100.00% 88780 [ 0.46]
****** Process <9928.4228.0> -- 0.28 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 36 0.02 14 [ 0.39]
'Elixir.Membrane.SRTP.Decryptor':handle_demand/5 36 0.02 18 [ 0.50]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 36 0.03 24 [ 0.67]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 36 0.03 25 [ 0.69]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 36 0.03 26 [ 0.72]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 36 0.03 28 [ 0.78]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 36 0.04 32 [ 0.89]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 36 0.06 52 [ 1.44]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 36 0.07 64 [ 1.78]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 360 0.10 92 [ 0.26]
'Elixir.Membrane.Buffer.Metric':from_unit/1 360 0.10 94 [ 0.26]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 360 0.11 96 [ 0.27]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_buffer/5-fun-0-'/2 360 0.11 98 [ 0.27]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 360 0.11 99 [ 0.28]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 360 0.11 102 [ 0.28]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 396 0.12 106 [ 0.27]
queue:in/2 360 0.12 107 [ 0.30]
lists:flatten/1 360 0.12 110 [ 0.31]
'Elixir.Membrane.Core.InputBuffer':store/2 360 0.12 110 [ 0.31]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 360 0.12 113 [ 0.31]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 396 0.12 113 [ 0.29]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 360 0.13 115 [ 0.32]
'Elixir.Bunch.Enum':try_reduce_while/3 360 0.13 117 [ 0.33]
gen_server:try_dispatch/3 396 0.13 120 [ 0.30]
'Elixir.Keyword':get/2 396 0.13 122 [ 0.31]
'Elixir.Enum':reduce/3 360 0.13 122 [ 0.34]
'Elixir.Membrane.RTP.Utils':strip_padding/2 360 0.14 123 [ 0.34]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 360 0.14 125 [ 0.35]
erlang:max/2 432 0.14 125 [ 0.29]
'Elixir.List':flatten/1 360 0.14 126 [ 0.35]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 396 0.14 127 [ 0.32]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 468 0.14 129 [ 0.28]
'Elixir.Membrane.SRTP.Decryptor':'-handle_process_list/4-fun-0-'/2 360 0.14 129 [ 0.36]
'Elixir.ExLibSRTP':unprotect/2 360 0.15 135 [ 0.38]
'Elixir.Membrane.Helper.GenServer':noreply/2 396 0.15 136 [ 0.34]
maps:merge/2 360 0.15 139 [ 0.39]
'Elixir.Access':key/2 396 0.15 139 [ 0.35]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 360 0.16 149 [ 0.41]
'Elixir.Membrane.Core.Child.PadModel':'-update_multi/3-fun-0-'/2 360 0.16 150 [ 0.42]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 396 0.16 150 [ 0.38]
gen_server:decode_msg/9 396 0.17 153 [ 0.39]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 396 0.17 156 [ 0.39]
'Elixir.Membrane.Core.Child.PadModel':apply_updates/2 360 0.17 158 [ 0.44]
gen_server:handle_common_reply/8 396 0.18 167 [ 0.42]
'Elixir.ExLibSRTP.Native':unprotect/4 360 0.20 181 [ 0.50]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 756 0.20 184 [ 0.24]
'Elixir.Membrane.Core.Child.PadModel':'update_multi!'/3 360 0.20 185 [ 0.51]
'Elixir.ExLibSRTP':unprotect/3 360 0.21 188 [ 0.52]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 720 0.21 191 [ 0.27]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 792 0.21 192 [ 0.24]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 756 0.21 193 [ 0.26]
lists:keyfind/3 396 0.21 195 [ 0.49]
'Elixir.Enum':split_while/2 756 0.22 197 [ 0.26]
'Elixir.Enum':drop_while/2 756 0.22 199 [ 0.26]
lists:reverse/1 756 0.23 208 [ 0.28]
'Elixir.Bunch.Access':get_and_update_in/3 396 0.23 211 [ 0.53]
'Elixir.Bunch.Enum':try_each/2 360 0.24 219 [ 0.61]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 396 0.24 221 [ 0.56]
'Elixir.Membrane.Core.Message':send/4 396 0.25 227 [ 0.57]
'Elixir.Membrane.Core.Message':for_pad/1 396 0.25 229 [ 0.58]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 756 0.25 232 [ 0.31]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 360 0.26 236 [ 0.66]
erlang:'++'/2 756 0.26 237 [ 0.31]
queue:out/1 756 0.26 238 [ 0.31]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 360 0.26 240 [ 0.67]
'Elixir.Membrane.SRTP.Decryptor':handle_process_list/4 360 0.26 240 [ 0.67]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 396 0.27 249 [ 0.63]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 360 0.28 253 [ 0.70]
'Elixir.Bunch.Enum':do_try_each/2 720 0.28 254 [ 0.35]
gen_server:handle_msg/6 396 0.29 261 [ 0.66]
'Elixir.Enum':to_list/1 1116 0.29 265 [ 0.24]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 396 0.30 276 [ 0.70]
'Elixir.Keyword':get/3 396 0.31 281 [ 0.71]
'Elixir.Qex':push/2 360 0.31 285 [ 0.79]
gen_server:try_dispatch/4 396 0.31 286 [ 0.72]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 396 0.32 290 [ 0.73]
'Elixir.Membrane.Core.InputBuffer':store/3 360 0.33 296 [ 0.82]
'Elixir.Enum':map/2 1116 0.33 299 [ 0.27]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 756 0.33 303 [ 0.40]
'Elixir.Membrane.Core.Child.PadModel':update_multi/3 360 0.34 308 [ 0.86]
'Elixir.Bunch.Struct':update_in/3 396 0.34 310 [ 0.78]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 360 0.34 311 [ 0.86]
'Elixir.Membrane.Core.Element':handle_info/2 396 0.36 328 [ 0.83]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 360 0.36 330 [ 0.92]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 360 0.37 337 [ 0.94]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 756 0.38 345 [ 0.46]
'Elixir.Membrane.Core.Child.PadModel':'-apply_updates/2-fun-0-'/2 720 0.38 345 [ 0.48]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 360 0.39 354 [ 0.98]
'Elixir.Map':update/4 360 0.39 355 [ 0.99]
'Elixir.Membrane.Pad.Data':get_and_update/3 1548 0.39 359 [ 0.23]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 756 0.40 364 [ 0.48]
'Elixir.Membrane.Core.InputBuffer':do_take/2 396 0.40 365 [ 0.92]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 1548 0.40 366 [ 0.24]
'Elixir.Bunch.Enum':chunk_by_prev/3 756 0.41 374 [ 0.49]
'Elixir.Enum':split_while_list/3 756 0.42 379 [ 0.50]
'Elixir.Bunch.Access':put_in/3 792 0.42 385 [ 0.49]
'Elixir.Access':'-key/2-fun-0-'/5 396 0.43 390 [ 0.98]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 756 0.44 397 [ 0.53]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 396 0.44 398 [ 1.01]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 792 0.44 400 [ 0.51]
'Elixir.Enumerable':impl_for/1 1872 0.44 404 [ 0.22]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 756 0.46 416 [ 0.55]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 360 0.46 420 [ 1.17]
lists:do_flatten/2 1440 0.48 436 [ 0.30]
'Elixir.Kernel':put_in/3 792 0.48 440 [ 0.56]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 360 0.49 444 [ 1.23]
'Elixir.Qex':pop/1 756 0.50 457 [ 0.60]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 756 0.50 459 [ 0.61]
'Elixir.Membrane.Core.Element.State':get_and_update/3 1908 0.51 461 [ 0.24]
'Elixir.Membrane.Pad.Data':fetch/2 1080 0.51 461 [ 0.43]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 756 0.51 468 [ 0.62]
'Elixir.Enum':reverse/1 2268 0.52 475 [ 0.21]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 396 0.53 486 [ 1.23]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 720 0.54 491 [ 0.68]
'Elixir.Bunch.Access':update_in/3 1116 0.55 502 [ 0.45]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 1080 0.59 539 [ 0.50]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 756 0.59 541 [ 0.72]
'Elixir.Enum':drop_while_list/2 1512 0.60 542 [ 0.36]
'Elixir.Bunch.Enum':try_reduce/3 1512 0.60 543 [ 0.36]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 1188 0.61 556 [ 0.47]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 756 0.62 563 [ 0.74]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 1116 0.62 567 [ 0.51]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 1116 0.63 574 [ 0.51]
'Elixir.Kernel':update_in/3 1116 0.66 597 [ 0.53]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 360 0.67 610 [ 1.69]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 360 0.67 612 [ 1.70]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 396 0.69 629 [ 1.59]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 792 0.78 706 [ 0.89]
'Elixir.Membrane.SRTP.Decryptor':handle_process/4 360 0.84 768 [ 2.13]
'Elixir.Enumerable':'impl_for!'/1 1872 0.89 811 [ 0.43]
'Elixir.Enum':reduce_while/3 1872 0.90 818 [ 0.44]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 756 0.94 859 [ 1.14]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 396 0.99 906 [ 2.29]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 2232 1.13 1033 [ 0.46]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 5364 1.18 1079 [ 0.20]
'Elixir.Enumerable':reduce/3 1872 1.19 1088 [ 0.58]
maps:find/2 4176 1.26 1152 [ 0.28]
'Elixir.Membrane.Core.Element.State':fetch/2 3096 1.42 1292 [ 0.42]
'Elixir.Bunch.Access':get_in/2 3096 1.44 1314 [ 0.42]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 5004 1.45 1321 [ 0.26]
'Elixir.Enumerable.List':reduce/3 3348 1.50 1367 [ 0.41]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 756 1.61 1469 [ 1.94]
erlang:send/2 396 1.64 1492 [ 3.77]
'Elixir.Access':get/2 10404 2.19 1996 [ 0.19]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 4644 2.25 2048 [ 0.44]
'Elixir.Map':get/3 8028 2.30 2092 [ 0.26]
'Elixir.Bunch':listify/1 10800 2.45 2230 [ 0.21]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 3096 2.73 2484 [ 0.80]
'Elixir.Kernel':get_and_update_in/3 7668 2.79 2541 [ 0.33]
'Elixir.Access':get_and_update/3 7272 2.87 2611 [ 0.36]
'Elixir.Access':get/3 10404 3.73 3400 [ 0.33]
'Elixir.Kernel':get_in/2 10368 3.89 3543 [ 0.34]
gen_server:loop/7 396 4.15 3779 [ 9.54]
'Elixir.ExLibSRTP.Native.Nif':unifex_unprotect/4 360 6.03 5488 [ 15.24]
'Elixir.Map':get_and_update/3 7272 8.04 7318 [ 1.01]
----------------------------------------------------------------------------------------- ------ ------- ----- [----------]
Total: 188748 100.00% 91074 [ 0.48]
****** Process <9928.4229.0> -- 0.42 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.Core.Message':send/4 52 0.03 37 [ 0.71]
erlang:send/2 52 0.11 151 [ 2.90]
'Elixir.Enum':'-take_random/2-fun-0-'/2 514 0.11 152 [ 0.30]
gen_server:try_dispatch/3 514 0.12 163 [ 0.32]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 514 0.13 175 [ 0.34]
'Elixir.Enum':to_list/1 514 0.13 176 [ 0.34]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 514 0.14 185 [ 0.36]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 514 0.14 189 [ 0.37]
gen_server:handle_common_reply/8 514 0.14 192 [ 0.37]
lists:reverse/1 514 0.15 200 [ 0.39]
'Elixir.Enum':split_while/2 514 0.15 201 [ 0.39]
'Elixir.Enum':drop_while/2 514 0.15 202 [ 0.39]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 514 0.15 206 [ 0.40]
'Elixir.Membrane.Helper.GenServer':noreply/2 514 0.15 207 [ 0.40]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 514 0.15 209 [ 0.41]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 514 0.15 209 [ 0.41]
queue:in/2 514 0.15 210 [ 0.41]
'Elixir.Keyword':get/2 514 0.15 210 [ 0.41]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 514 0.16 212 [ 0.41]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 514 0.16 215 [ 0.42]
'Elixir.Membrane.Core.InputBuffer':store/2 514 0.16 215 [ 0.42]
'Elixir.Membrane.Element.Fake.Sink.Buffers':handle_write_list/4 514 0.16 216 [ 0.42]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 514 0.16 217 [ 0.42]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 514 0.17 231 [ 0.45]
gen_server:decode_msg/9 514 0.17 231 [ 0.45]
maps:remove/2 514 0.17 232 [ 0.45]
maps:merge/2 514 0.18 238 [ 0.46]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 514 0.18 246 [ 0.48]
'Elixir.Membrane.Core.Message':for_pad/1 514 0.19 253 [ 0.49]
erlang:'++'/2 514 0.19 256 [ 0.50]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 514 0.20 266 [ 0.52]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 514 0.21 280 [ 0.54]
lists:keyfind/3 514 0.23 306 [ 0.60]
'Elixir.Membrane.Core.Element.DemandHandler':'-supply_demand/2-fun-0-'/2 514 0.23 306 [ 0.60]
'Elixir.Enum':'-take_random/2-anonymous-4-'/3 514 0.23 313 [ 0.61]
'Elixir.MapSet':put/2 514 0.23 315 [ 0.61]
maps:keys/1 514 0.23 318 [ 0.62]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 514 0.24 325 [ 0.63]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 514 0.24 331 [ 0.64]
'Elixir.Enum':split_while_list/3 514 0.25 333 [ 0.65]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 1028 0.25 337 [ 0.33]
'Elixir.Enumerable.MapSet':reduce/3 514 0.25 341 [ 0.66]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 1028 0.26 350 [ 0.34]
'Elixir.Bunch.Enum':chunk_by_prev/3 514 0.26 352 [ 0.68]
gen_server:handle_msg/6 514 0.26 354 [ 0.69]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 514 0.26 355 [ 0.69]
'Elixir.Bunch.Access':get_and_update_in/3 514 0.26 357 [ 0.69]
erlang:max/2 1080 0.27 362 [ 0.34]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 1028 0.27 365 [ 0.36]
'Elixir.Enum':map/2 1028 0.27 368 [ 0.36]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 1028 0.29 389 [ 0.38]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 514 0.30 403 [ 0.78]
'Elixir.MapSet':to_list/1 514 0.30 404 [ 0.79]
'Elixir.Keyword':get/3 514 0.31 417 [ 0.81]
'Elixir.MapSet':delete/2 514 0.31 418 [ 0.81]
'Elixir.Enum':take_random/2 514 0.32 430 [ 0.84]
gen_server:try_dispatch/4 514 0.32 430 [ 0.84]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 514 0.32 433 [ 0.84]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 1028 0.33 442 [ 0.43]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 514 0.33 447 [ 0.87]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 514 0.33 452 [ 0.88]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 1028 0.35 472 [ 0.46]
'Elixir.Membrane.Core.InputBuffer':store/3 514 0.35 472 [ 0.92]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 514 0.35 477 [ 0.93]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 514 0.35 478 [ 0.93]
'Elixir.Enum':drop_while_list/2 1028 0.35 481 [ 0.47]
'Elixir.Map':'update!'/3 514 0.36 493 [ 0.96]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 514 0.37 496 [ 0.96]
'Elixir.Membrane.Core.Element':handle_info/2 514 0.37 500 [ 0.97]
'Elixir.Qex':push/2 514 0.38 513 [ 1.00]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-4-'/1 514 0.39 523 [ 1.02]
queue:out/1 1542 0.39 524 [ 0.34]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 514 0.42 574 [ 1.12]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 2056 0.44 594 [ 0.29]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 2056 0.46 624 [ 0.30]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 514 0.47 633 [ 1.23]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 514 0.47 635 [ 1.24]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 1028 0.48 647 [ 0.63]
'Elixir.Access':key/2 1028 0.49 671 [ 0.65]
'Elixir.Enumerable':impl_for/1 2570 0.50 683 [ 0.27]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 514 0.53 724 [ 1.41]
'Elixir.Enum':reverse/1 2570 0.54 740 [ 0.29]
'Elixir.Membrane.Pad.Data':fetch/2 1542 0.55 747 [ 0.48]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 514 0.58 792 [ 1.54]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 1028 0.60 809 [ 0.79]
'Elixir.Bunch.Access':update_in/3 1542 0.62 840 [ 0.54]
'Elixir.Bunch.Enum':try_reduce/3 2056 0.64 870 [ 0.42]
'Elixir.Bunch.Struct':update_in/3 1028 0.68 918 [ 0.89]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 1542 0.68 928 [ 0.60]
'Elixir.Membrane.Core.Element.State':get_and_update/3 3084 0.71 958 [ 0.31]
'Elixir.Kernel':update_in/3 1542 0.71 967 [ 0.63]
'Elixir.Membrane.Pad.Data':get_and_update/3 3084 0.72 974 [ 0.32]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 514 0.73 996 [ 1.94]
'Elixir.Membrane.Core.InputBuffer':do_take/2 1028 0.81 1094 [ 1.06]
'Elixir.Bunch.Access':put_in/3 2056 0.81 1104 [ 0.54]
'Elixir.Qex':pop/1 1542 0.82 1113 [ 0.72]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 2056 0.83 1131 [ 0.55]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 514 0.83 1132 [ 2.20]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 2056 0.87 1178 [ 0.57]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 2056 0.87 1184 [ 0.58]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 1028 0.90 1217 [ 1.18]
'Elixir.Enumerable':'impl_for!'/1 2570 0.91 1233 [ 0.48]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 1542 0.91 1235 [ 0.80]
'Elixir.Kernel':put_in/3 2056 0.97 1311 [ 0.64]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 1028 1.00 1359 [ 1.32]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 514 1.03 1399 [ 2.72]
'Elixir.Enumerable.List':reduce/3 4112 1.17 1586 [ 0.39]
'Elixir.Enumerable':reduce/3 2570 1.23 1674 [ 0.65]
maps:find/2 6168 1.30 1765 [ 0.29]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 1028 1.35 1827 [ 1.78]
'Elixir.Access':'-key/2-fun-0-'/5 1028 1.36 1843 [ 1.79]
'Elixir.Bunch.Access':get_in/2 4626 1.43 1940 [ 0.42]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 2056 1.43 1941 [ 0.94]
'Elixir.Enum':reduce_while/3 2056 1.47 1997 [ 0.97]
'Elixir.Membrane.Core.Element.State':fetch/2 4626 1.56 2119 [ 0.46]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 7710 1.64 2234 [ 0.29]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 9252 1.89 2571 [ 0.28]
'Elixir.Access':get/2 15420 2.87 3903 [ 0.25]
'Elixir.Bunch':listify/1 17476 2.91 3956 [ 0.23]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 4626 2.92 3960 [ 0.86]
'Elixir.Map':get/3 13364 2.95 4007 [ 0.30]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 7710 3.07 4171 [ 0.54]
gen_server:loop/7 514 3.18 4324 [ 8.41]
'Elixir.Kernel':get_and_update_in/3 13364 3.69 5010 [ 0.37]
'Elixir.Access':get/3 15420 3.94 5348 [ 0.35]
'Elixir.Kernel':get_in/2 15420 3.96 5381 [ 0.35]
'Elixir.Access':get_and_update/3 12336 4.16 5652 [ 0.46]
'Elixir.Map':get_and_update/3 12336 10.19 13840 [ 1.12]
----------------------------------------------------------------------------------------- ------ ------- ------ [----------]
Total: 265894 100.00% 135827 [ 0.51]
****** Process <9928.4230.0> -- 0.52 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.Element.Tee.Master':handle_demand/5 52 0.01 19 [ 0.37]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 52 0.02 32 [ 0.62]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 52 0.02 35 [ 0.67]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 52 0.02 37 [ 0.71]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 52 0.02 40 [ 0.77]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 52 0.03 54 [ 1.04]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 52 0.03 58 [ 1.12]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 52 0.04 60 [ 1.15]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 52 0.05 92 [ 1.77]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 514 0.08 143 [ 0.28]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 514 0.08 144 [ 0.28]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_buffer/5-fun-0-'/2 514 0.09 147 [ 0.29]
'Elixir.Membrane.Buffer.Metric':from_unit/1 514 0.09 154 [ 0.30]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 514 0.09 157 [ 0.31]
'Elixir.Membrane.Core.InputBuffer':store/2 514 0.09 159 [ 0.31]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 514 0.09 159 [ 0.31]
gen_server:try_dispatch/3 566 0.09 160 [ 0.28]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 514 0.10 165 [ 0.32]
maps:iterator/1 514 0.10 166 [ 0.32]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 566 0.10 167 [ 0.30]
queue:in/2 514 0.10 170 [ 0.33]
'Elixir.Keyword':get/2 566 0.10 171 [ 0.30]
'Elixir.Membrane.Core.Child.PadModel':'-update_multi/3-fun-0-'/2 514 0.10 171 [ 0.33]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 566 0.10 174 [ 0.31]
erlang:max/2 618 0.10 175 [ 0.28]
'Elixir.Enum':reduce/3 514 0.11 184 [ 0.36]
'Elixir.Access':key/2 566 0.11 188 [ 0.33]
'Elixir.Membrane.Helper.GenServer':noreply/2 566 0.11 190 [ 0.34]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 514 0.11 190 [ 0.37]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 670 0.11 191 [ 0.29]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 566 0.11 191 [ 0.34]
maps:merge/2 514 0.12 196 [ 0.38]
'Elixir.Bunch.Enum':try_reduce_while/3 514 0.12 202 [ 0.39]
gen_server:decode_msg/9 566 0.12 203 [ 0.36]
'Elixir.Membrane.Core.Message':for_pad/1 566 0.12 205 [ 0.36]
'Elixir.Membrane.Core.Child.PadModel':apply_updates/2 514 0.12 207 [ 0.40]
'Elixir.Membrane.Element.Tee.Master':handle_process/4 514 0.12 207 [ 0.40]
gen_server:handle_common_reply/8 566 0.12 208 [ 0.37]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 566 0.13 222 [ 0.39]
lists:reverse/2 514 0.14 232 [ 0.45]
'Elixir.Membrane.Element.Tee.Master':'-handle_process_list/4-fun-0-'/2 514 0.14 233 [ 0.45]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 566 0.14 243 [ 0.43]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 1080 0.15 257 [ 0.24]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 1080 0.15 261 [ 0.24]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 1080 0.16 268 [ 0.25]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 1132 0.16 271 [ 0.24]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 1080 0.16 276 [ 0.26]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 1028 0.17 284 [ 0.28]
'Elixir.Bunch.Access':get_and_update_in/3 566 0.17 292 [ 0.52]
'Elixir.Enum':drop_while/2 1080 0.17 296 [ 0.27]
'Elixir.Enum':split_while/2 1080 0.17 297 [ 0.28]
queue:out/1 1080 0.18 302 [ 0.28]
maps:keys/1 514 0.18 302 [ 0.59]
'Elixir.Membrane.Core.Child.PadModel':'update_multi!'/3 514 0.18 309 [ 0.60]
lists:keyfind/3 566 0.18 310 [ 0.55]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 1080 0.19 319 [ 0.30]
'Elixir.Map':new/1 514 0.19 319 [ 0.62]
'Elixir.Enum':map/2 1080 0.19 325 [ 0.30]
'Elixir.Membrane.Element.Tee.Master':handle_process_list/4 514 0.19 331 [ 0.64]
erlang:'++'/2 1080 0.20 339 [ 0.31]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 514 0.20 345 [ 0.67]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 566 0.21 350 [ 0.62]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 514 0.21 352 [ 0.68]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 566 0.21 364 [ 0.64]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 1080 0.22 369 [ 0.34]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 566 0.22 370 [ 0.65]
gen_server:handle_msg/6 566 0.22 378 [ 0.67]
'Elixir.Qex':push/2 514 0.23 394 [ 0.77]
'Elixir.Keyword':get/3 566 0.23 395 [ 0.70]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 514 0.23 398 [ 0.77]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 514 0.24 412 [ 0.80]
'Elixir.Membrane.Core.InputBuffer':store/3 514 0.24 414 [ 0.81]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 514 0.25 418 [ 0.81]
'Elixir.Membrane.Core.Child.PadModel':update_multi/3 514 0.26 439 [ 0.85]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 566 0.26 442 [ 0.78]
'Elixir.Map':update/4 514 0.27 461 [ 0.90]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 2056 0.28 468 [ 0.23]
'Elixir.Membrane.Core.Child.PadModel':'-apply_updates/2-fun-0-'/2 1028 0.28 471 [ 0.46]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 514 0.28 471 [ 0.92]
'Elixir.Membrane.Core.Element':handle_info/2 566 0.28 482 [ 0.85]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 1080 0.29 501 [ 0.46]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 1080 0.30 503 [ 0.47]
'Elixir.Enum':split_while_list/3 1080 0.30 505 [ 0.47]
'Elixir.Membrane.Pad.Data':get_and_update/3 2212 0.30 510 [ 0.23]
maps:fold/3 514 0.31 521 [ 1.01]
gen_server:try_dispatch/4 566 0.31 529 [ 0.93]
'Elixir.Membrane.Core.InputBuffer':do_take/2 566 0.31 532 [ 0.94]
'Elixir.Membrane.Core.Element.ActionHandler':'-do_handle_action/4-fun-1-'/5 2056 0.32 539 [ 0.26]
'Elixir.Access':'-key/2-fun-0-'/5 566 0.32 543 [ 0.96]
'Elixir.Bunch.Enum':chunk_by_prev/3 1080 0.32 548 [ 0.51]
'Elixir.Bunch.Access':put_in/3 1132 0.33 555 [ 0.49]
'Elixir.Bunch.Struct':update_in/3 566 0.33 558 [ 0.99]
lists:reverse/1 1594 0.34 570 [ 0.36]
maps:to_list_internal/1 2570 0.34 577 [ 0.22]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 1132 0.34 580 [ 0.51]
'Elixir.Enum':filter/2 514 0.35 588 [ 1.14]
'Elixir.Membrane.Core.Child.PadModel':'-filter_data/2-fun-0-'/2 2570 0.35 603 [ 0.23]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 1028 0.37 621 [ 0.60]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 1542 0.38 650 [ 0.42]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 514 0.38 652 [ 1.27]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 566 0.38 654 [ 1.16]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 1080 0.38 654 [ 0.61]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 1080 0.39 664 [ 0.61]
'Elixir.Enum':to_list/1 3136 0.41 697 [ 0.22]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 566 0.41 698 [ 1.23]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 1698 0.41 701 [ 0.41]
'Elixir.Enum':'-filter/2-anonymous-1-'/4 2570 0.42 719 [ 0.28]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 514 0.42 720 [ 1.40]
'Elixir.Bunch.Access':update_in/3 1594 0.43 723 [ 0.45]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 1080 0.43 729 [ 0.68]
'Elixir.Membrane.Core.Child.PadModel':filter_data/2 514 0.44 746 [ 1.45]
'Elixir.Membrane.Core.Child.PadModel':'constraints_met?'/2 2570 0.45 764 [ 0.30]
'Elixir.Enum':reverse/1 3240 0.45 773 [ 0.24]
'Elixir.Enum':drop_while_list/2 2160 0.46 775 [ 0.36]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 1594 0.46 785 [ 0.49]
'Elixir.Membrane.Core.Element.State':get_and_update/3 2726 0.47 800 [ 0.29]
'Elixir.Kernel':update_in/3 1594 0.48 817 [ 0.51]
maps:from_list/1 514 0.49 828 [ 1.61]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 3754 0.49 836 [ 0.22]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 514 0.49 839 [ 1.63]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 2056 0.51 872 [ 0.42]
'Elixir.Kernel':put_in/3 1132 0.51 875 [ 0.77]
'Elixir.Qex':pop/1 1080 0.52 891 [ 0.82]
maps:next/1 3084 0.55 936 [ 0.30]
erts_internal:map_next/3 3084 0.55 938 [ 0.30]
'Elixir.Bunch.Enum':try_each/2 2056 0.56 953 [ 0.46]
'Elixir.Membrane.Core.Message':send/4 2108 0.56 960 [ 0.46]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 1132 0.58 979 [ 0.86]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 566 0.58 984 [ 1.74]
'Elixir.Membrane.Core.Child.PadModel':'-constraints_met?/2-fun-0-'/2 2570 0.63 1065 [ 0.41]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 1080 0.64 1092 [ 1.01]
maps:to_list/1 2570 0.65 1105 [ 0.43]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 2160 0.66 1119 [ 0.52]
'Elixir.Bunch.Enum':try_reduce/3 2674 0.66 1123 [ 0.42]
'Elixir.Enum':'-all?/2-fun-0-'/3 2570 0.67 1145 [ 0.45]
'Elixir.Enumerable.Map':reduce/3 2570 0.70 1187 [ 0.46]
'Elixir.Enum':'all?'/2 2570 0.70 1195 [ 0.46]
'Elixir.Enumerable':impl_for/1 5758 0.72 1222 [ 0.21]
'Elixir.Enum':'-filter/2-fun-0-'/3 2570 0.72 1224 [ 0.48]
'Elixir.Bunch.Enum':do_try_each/2 4112 0.79 1336 [ 0.32]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 566 0.81 1374 [ 2.43]
'Elixir.Enum':reduce_while/3 3188 0.82 1399 [ 0.44]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 7664 0.91 1544 [ 0.20]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 3136 0.99 1683 [ 0.54]
'Elixir.Membrane.Pad.Data':fetch/2 4112 0.99 1689 [ 0.41]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 3650 1.07 1813 [ 0.50]
maps:fold_1/3 3084 1.10 1871 [ 0.61]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 1080 1.18 2005 [ 1.86]
'Elixir.Bunch.Access':get_in/2 5966 1.39 2360 [ 0.40]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 8692 1.43 2428 [ 0.28]
'Elixir.Membrane.Core.Element.State':fetch/2 5966 1.46 2486 [ 0.42]
maps:find/2 10078 1.52 2577 [ 0.26]
'Elixir.Enumerable':'impl_for!'/1 5758 1.57 2667 [ 0.46]
'Elixir.Map':get/3 11470 1.65 2809 [ 0.24]
'Elixir.Enumerable':reduce/3 5758 1.79 3050 [ 0.53]
'Elixir.Kernel':get_and_update_in/3 10956 1.85 3150 [ 0.29]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 8178 1.96 3334 [ 0.41]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 4112 2.01 3412 [ 0.83]
'Elixir.Access':get_and_update/3 10390 2.15 3655 [ 0.35]
'Elixir.Bunch':listify/1 18516 2.22 3768 [ 0.20]
'Elixir.Access':get/2 22062 2.43 4124 [ 0.19]
'Elixir.Enumerable.List':reduce/3 12492 2.70 4590 [ 0.37]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 5966 2.81 4772 [ 0.80]
'Elixir.Kernel':get_in/2 19440 3.73 6344 [ 0.33]
gen_server:loop/7 566 3.94 6701 [ 11.84]
'Elixir.Access':get/3 22062 4.62 7859 [ 0.36]
erlang:send/2 2108 5.46 9283 [ 4.40]
'Elixir.Map':get_and_update/3 10390 5.82 9900 [ 0.95]
----------------------------------------------------------------------------------------- ------ ------- ------ [----------]
Total: 379662 100.00% 170007 [ 0.45]
****** Process <9928.4231.0> -- 0.36 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 52 0.01 17 [ 0.33]
'Elixir.Membrane.WebRTC.TrackFilter':handle_demand/5 52 0.02 21 [ 0.40]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 52 0.03 30 [ 0.58]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 52 0.03 30 [ 0.58]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 52 0.03 31 [ 0.60]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 52 0.03 31 [ 0.60]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 52 0.04 47 [ 0.90]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 52 0.05 58 [ 1.12]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 52 0.08 97 [ 1.87]
'Elixir.Membrane.Buffer.Metric':from_unit/1 514 0.13 148 [ 0.29]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_buffer/5-fun-0-'/2 514 0.13 149 [ 0.29]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 514 0.13 152 [ 0.30]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 514 0.14 161 [ 0.31]
gen_server:try_dispatch/3 566 0.14 161 [ 0.28]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 514 0.14 166 [ 0.32]
'Elixir.Membrane.Core.InputBuffer':store/2 514 0.14 167 [ 0.32]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 566 0.14 167 [ 0.30]
'Elixir.Keyword':get/2 566 0.14 170 [ 0.30]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 514 0.15 173 [ 0.34]
'Elixir.Membrane.Core.Child.PadModel':'-update_multi/3-fun-0-'/2 514 0.15 174 [ 0.34]
erlang:max/2 618 0.15 174 [ 0.28]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 514 0.15 178 [ 0.35]
'Elixir.List':flatten/1 514 0.15 178 [ 0.35]
lists:flatten/1 514 0.15 179 [ 0.35]
'Elixir.Enum':reduce/3 514 0.15 180 [ 0.35]
maps:merge/2 514 0.16 186 [ 0.36]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 514 0.16 187 [ 0.36]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 514 0.16 187 [ 0.36]
'Elixir.Membrane.WebRTC.TrackFilter':'-handle_process_list/4-fun-0-'/2 514 0.16 188 [ 0.37]
queue:in/2 514 0.16 190 [ 0.37]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 670 0.16 190 [ 0.28]
'Elixir.Membrane.Helper.GenServer':noreply/2 566 0.16 191 [ 0.34]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 566 0.17 198 [ 0.35]
'Elixir.Bunch.Enum':try_reduce_while/3 514 0.17 198 [ 0.39]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 566 0.17 200 [ 0.35]
gen_server:handle_common_reply/8 566 0.17 201 [ 0.36]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 514 0.17 205 [ 0.40]
'Elixir.Access':key/2 566 0.18 213 [ 0.38]
lists:keyfind/3 566 0.19 226 [ 0.40]
gen_server:decode_msg/9 566 0.19 227 [ 0.40]
'Elixir.Membrane.Core.Message':for_pad/1 566 0.20 236 [ 0.42]
'Elixir.Membrane.WebRTC.TrackFilter':handle_process/4 514 0.21 245 [ 0.48]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 566 0.21 246 [ 0.43]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 566 0.21 246 [ 0.43]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 1080 0.22 260 [ 0.24]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 1080 0.23 269 [ 0.25]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 1080 0.23 273 [ 0.25]
'Elixir.Membrane.Core.Child.PadModel':'update_multi!'/3 514 0.23 273 [ 0.53]
lists:reverse/1 1080 0.23 276 [ 0.26]
'Elixir.Enum':split_while/2 1080 0.24 282 [ 0.26]
'Elixir.Enum':drop_while/2 1080 0.24 287 [ 0.27]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 1028 0.25 293 [ 0.29]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 1132 0.25 294 [ 0.26]
'Elixir.Bunch.Access':get_and_update_in/3 566 0.25 295 [ 0.52]
'Elixir.Bunch.Enum':try_each/2 514 0.25 296 [ 0.58]
'Elixir.Membrane.Core.Child.PadModel':apply_updates/2 514 0.26 306 [ 0.60]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 1080 0.27 314 [ 0.29]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 566 0.27 314 [ 0.55]
queue:out/1 1080 0.27 323 [ 0.30]
erlang:'++'/2 1080 0.29 342 [ 0.32]
gen_server:handle_msg/6 566 0.30 350 [ 0.62]
'Elixir.Membrane.Core.Message':send/4 566 0.30 359 [ 0.63]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 514 0.31 366 [ 0.71]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 514 0.31 371 [ 0.72]
'Elixir.Membrane.WebRTC.TrackFilter':handle_process_list/4 514 0.31 372 [ 0.72]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 514 0.33 386 [ 0.75]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 566 0.33 387 [ 0.68]
'Elixir.Enum':to_list/1 1594 0.33 388 [ 0.24]
'Elixir.Bunch.Enum':do_try_each/2 1028 0.33 389 [ 0.38]
'Elixir.Qex':push/2 514 0.33 392 [ 0.76]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 566 0.34 397 [ 0.70]
'Elixir.Keyword':get/3 566 0.34 400 [ 0.71]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 514 0.34 400 [ 0.78]
'Elixir.Membrane.Core.InputBuffer':store/3 514 0.35 408 [ 0.79]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 1080 0.35 413 [ 0.38]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 566 0.35 414 [ 0.73]
'Elixir.Enum':map/2 1594 0.36 421 [ 0.26]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 514 0.37 442 [ 0.86]
'Elixir.Membrane.Core.Element':handle_info/2 566 0.38 451 [ 0.80]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 1080 0.38 454 [ 0.42]
'Elixir.Bunch.Struct':update_in/3 566 0.39 463 [ 0.82]
gen_server:try_dispatch/4 566 0.40 467 [ 0.83]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 514 0.41 484 [ 0.94]
'Elixir.Membrane.Core.Child.PadModel':update_multi/3 514 0.41 489 [ 0.95]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 514 0.41 489 [ 0.95]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 2212 0.42 493 [ 0.22]
'Elixir.Membrane.Pad.Data':get_and_update/3 2212 0.42 501 [ 0.23]
'Elixir.Enum':split_while_list/3 1080 0.43 503 [ 0.47]
'Elixir.Bunch.Enum':chunk_by_prev/3 1080 0.44 522 [ 0.48]
'Elixir.Membrane.Core.Child.PadModel':'-apply_updates/2-fun-0-'/2 1028 0.45 531 [ 0.52]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 1080 0.45 535 [ 0.50]
'Elixir.Bunch.Access':put_in/3 1132 0.45 537 [ 0.47]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 1132 0.46 540 [ 0.48]
'Elixir.Membrane.Core.InputBuffer':do_take/2 566 0.47 559 [ 0.99]
'Elixir.Kernel':put_in/3 1132 0.49 582 [ 0.51]
'Elixir.Access':'-key/2-fun-0-'/5 566 0.49 583 [ 1.03]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 566 0.50 589 [ 1.04]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 1080 0.51 599 [ 0.55]
'Elixir.Enumerable':impl_for/1 2674 0.51 600 [ 0.22]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 1080 0.52 611 [ 0.57]
'Elixir.Map':update/4 514 0.52 616 [ 1.20]
lists:do_flatten/2 2056 0.52 617 [ 0.30]
'Elixir.Membrane.Core.Element.State':get_and_update/3 2726 0.52 618 [ 0.23]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 1080 0.53 628 [ 0.58]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 514 0.53 631 [ 1.23]
'Elixir.Membrane.Pad.Data':fetch/2 1542 0.54 632 [ 0.41]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 514 0.55 655 [ 1.27]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 1080 0.56 659 [ 0.61]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 1542 0.56 660 [ 0.43]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 566 0.56 663 [ 1.17]
'Elixir.Qex':pop/1 1080 0.56 663 [ 0.61]
'Elixir.Enum':reverse/1 3240 0.56 665 [ 0.21]
'Elixir.Bunch.Access':update_in/3 1594 0.58 689 [ 0.43]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 1080 0.61 724 [ 0.67]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 1698 0.64 750 [ 0.44]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 1594 0.64 759 [ 0.48]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 1028 0.64 761 [ 0.74]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 1594 0.64 761 [ 0.48]
'Elixir.Enum':drop_while_list/2 2160 0.66 780 [ 0.36]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 514 0.70 828 [ 1.61]
'Elixir.Kernel':update_in/3 1594 0.70 829 [ 0.52]
'Elixir.Bunch.Enum':try_reduce/3 2160 0.70 829 [ 0.38]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 514 0.75 891 [ 1.73]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 566 0.78 925 [ 1.63]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 1132 0.79 936 [ 0.83]
'Elixir.Enumerable':'impl_for!'/1 2674 0.94 1114 [ 0.42]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 1080 1.00 1180 [ 1.09]
'Elixir.Enum':reduce_while/3 2674 1.02 1200 [ 0.45]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 566 1.07 1264 [ 2.23]
'Elixir.Enumerable':reduce/3 2674 1.18 1389 [ 0.52]
maps:find/2 5966 1.22 1437 [ 0.24]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 3188 1.24 1470 [ 0.46]
'Elixir.Enumerable.List':reduce/3 4782 1.30 1535 [ 0.32]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 7664 1.31 1543 [ 0.20]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 1080 1.45 1716 [ 1.59]
'Elixir.Bunch.Access':get_in/2 4424 1.53 1811 [ 0.41]
'Elixir.Membrane.Core.Element.State':fetch/2 4424 1.61 1900 [ 0.43]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 7150 1.90 2247 [ 0.31]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 6636 2.21 2608 [ 0.39]
'Elixir.Map':get/3 11470 2.27 2682 [ 0.23]
'Elixir.Access':get/2 14866 2.37 2799 [ 0.19]
erlang:send/2 566 2.55 3016 [ 5.33]
'Elixir.Kernel':get_and_update_in/3 10956 2.81 3316 [ 0.30]
'Elixir.Bunch':listify/1 15432 2.91 3432 [ 0.22]
'Elixir.Access':get_and_update/3 10390 2.99 3531 [ 0.34]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 4424 3.09 3648 [ 0.82]
gen_server:loop/7 566 3.93 4636 [ 8.19]
'Elixir.Kernel':get_in/2 14814 4.00 4722 [ 0.32]
'Elixir.Access':get/3 14866 4.04 4770 [ 0.32]
'Elixir.Map':get_and_update/3 10390 9.00 10629 [ 1.02]
----------------------------------------------------------------------------------------- ------ ------- ------ [----------]
Total: 267096 100.00% 118097 [ 0.44]
****** Process <9928.4232.0> -- 0.09 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
gen_server:handle_common_reply/8 1144 1.11 320 [ 0.28]
'Elixir.Membrane.Helper.GenServer':noreply/1 1144 1.14 329 [ 0.29]
gen_server:try_dispatch/3 1144 1.15 331 [ 0.29]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 1144 1.22 353 [ 0.31]
lists:member/2 1144 1.26 365 [ 0.32]
'Elixir.Membrane.Pad':get_corresponding_bin_name/1 1144 1.29 374 [ 0.33]
gen_server:decode_msg/9 1144 1.39 402 [ 0.35]
lists:keymember/3 1144 1.48 427 [ 0.37]
erlang:setelement/3 1144 1.57 455 [ 0.40]
maps:find/2 1144 1.60 462 [ 0.40]
'Elixir.Membrane.Pad':get_corresponding_bin_pad/1 1144 1.63 471 [ 0.41]
'Elixir.Bunch':listify/1 2288 1.89 547 [ 0.24]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 1144 1.96 566 [ 0.49]
'Elixir.Membrane.Core.Bin.LinkingBuffer':'currently_linking?'/2 1144 2.00 578 [ 0.51]
'Elixir.Bunch.Access':get_in/2 1144 2.09 604 [ 0.53]
'Elixir.Keyword':delete_key/2 2288 2.21 639 [ 0.28]
'Elixir.Membrane.Core.Bin.State':fetch/2 1144 2.24 646 [ 0.56]
'Elixir.Enum':'member?'/2 1144 2.36 681 [ 0.60]
gen_server:handle_msg/6 1144 2.39 690 [ 0.60]
'Elixir.Access':get/2 3432 2.47 713 [ 0.21]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 1144 2.70 779 [ 0.68]
gen_server:try_dispatch/4 1144 3.15 909 [ 0.79]
'Elixir.Keyword':put/3 1144 3.48 1006 [ 0.88]
'Elixir.Membrane.Core.Message':set_for_pad/2 1144 3.64 1053 [ 0.92]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 1144 3.71 1073 [ 0.94]
'Elixir.Kernel':get_in/2 3432 4.14 1195 [ 0.35]
'Elixir.Access':get/3 3432 5.37 1552 [ 0.45]
'Elixir.Membrane.Core.Bin':handle_info/2 1144 5.49 1586 [ 1.39]
'Elixir.Membrane.Core.Bin.LinkingBuffer':store_or_send/3 1144 7.09 2049 [ 1.79]
gen_server:loop/7 1144 9.56 2762 [ 2.41]
erlang:send/2 1144 17.23 4980 [ 4.35]
--------------------------------------------------------------- ----- ------- ----- [----------]
Total: 44616 100.00% 28897 [ 0.65]
****** Process <9928.4234.0> -- 0.34 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 52 0.01 15 [ 0.29]
'Elixir.Membrane.RTP.Opus.Depayloader':handle_demand/5 52 0.02 19 [ 0.37]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 52 0.03 29 [ 0.56]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 52 0.03 30 [ 0.58]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 52 0.03 30 [ 0.58]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 52 0.03 30 [ 0.58]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 52 0.03 37 [ 0.71]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 52 0.05 54 [ 1.04]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 52 0.07 83 [ 1.60]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 514 0.13 144 [ 0.28]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_buffer/5-fun-0-'/2 514 0.13 145 [ 0.28]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 566 0.13 148 [ 0.26]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 514 0.13 150 [ 0.29]
'Elixir.Membrane.Buffer.Metric':from_unit/1 514 0.14 152 [ 0.30]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 514 0.14 152 [ 0.30]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 514 0.14 153 [ 0.30]
queue:in/2 514 0.14 155 [ 0.30]
'Elixir.Membrane.Core.InputBuffer':store/2 514 0.14 155 [ 0.30]
gen_server:try_dispatch/3 566 0.14 157 [ 0.28]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 514 0.14 159 [ 0.31]
'Elixir.Membrane.Core.Child.PadModel':'-update_multi/3-fun-0-'/2 514 0.14 160 [ 0.31]
erlang:max/2 618 0.14 160 [ 0.26]
'Elixir.Enum':reduce/3 514 0.14 162 [ 0.32]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 566 0.15 163 [ 0.29]
'Elixir.List':flatten/1 514 0.15 165 [ 0.32]
'Elixir.Membrane.RTP.Opus.Depayloader':'-handle_process_list/4-fun-0-'/2 514 0.15 169 [ 0.33]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 566 0.15 173 [ 0.31]
gen_server:handle_common_reply/8 566 0.16 175 [ 0.31]
'Elixir.Keyword':get/2 566 0.16 176 [ 0.31]
'Elixir.Membrane.Helper.GenServer':noreply/2 566 0.16 177 [ 0.31]
'Elixir.Access':key/2 566 0.16 179 [ 0.32]
lists:flatten/1 514 0.16 179 [ 0.35]
'Elixir.Membrane.RTP.Opus.Depayloader':handle_process/4 514 0.16 181 [ 0.35]
'Elixir.Bunch.Enum':try_reduce_while/3 514 0.16 185 [ 0.36]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 514 0.17 187 [ 0.36]
gen_server:decode_msg/9 566 0.17 188 [ 0.33]
maps:merge/2 514 0.17 190 [ 0.37]
'Elixir.Membrane.Core.Message':for_pad/1 566 0.17 194 [ 0.34]
'Elixir.Membrane.Core.Child.PadModel':apply_updates/2 514 0.18 197 [ 0.38]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 566 0.18 202 [ 0.36]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 670 0.18 204 [ 0.30]
lists:keyfind/3 566 0.20 222 [ 0.39]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 566 0.21 236 [ 0.42]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 1080 0.22 245 [ 0.23]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 1028 0.23 256 [ 0.25]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 1132 0.23 260 [ 0.23]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 1080 0.24 265 [ 0.25]
lists:reverse/1 1080 0.24 270 [ 0.25]
'Elixir.Enum':drop_while/2 1080 0.24 272 [ 0.25]
'Elixir.Membrane.Core.Child.PadModel':'update_multi!'/3 514 0.25 277 [ 0.54]
'Elixir.Enum':split_while/2 1080 0.25 279 [ 0.26]
'Elixir.Bunch.Enum':try_each/2 514 0.25 280 [ 0.54]
'Elixir.Bunch.Access':get_and_update_in/3 566 0.26 287 [ 0.51]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 566 0.26 288 [ 0.51]
queue:out/1 1080 0.26 292 [ 0.27]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 1080 0.26 294 [ 0.27]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 514 0.26 295 [ 0.57]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 1080 0.27 302 [ 0.28]
'Elixir.Keyword':get/3 566 0.27 306 [ 0.54]
'Elixir.Membrane.Core.Message':send/4 566 0.28 315 [ 0.56]
'Elixir.Membrane.RTP.Opus.Depayloader':handle_process_list/4 514 0.28 318 [ 0.62]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 514 0.29 320 [ 0.62]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 566 0.29 329 [ 0.58]
erlang:'++'/2 1080 0.29 329 [ 0.30]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 566 0.30 334 [ 0.59]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 514 0.30 335 [ 0.65]
'Elixir.Bunch.Enum':do_try_each/2 1028 0.30 342 [ 0.33]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 514 0.31 343 [ 0.67]
gen_server:handle_msg/6 566 0.31 353 [ 0.62]
'Elixir.Enum':to_list/1 1594 0.32 361 [ 0.23]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 514 0.33 374 [ 0.73]
'Elixir.Membrane.Core.InputBuffer':store/3 514 0.33 374 [ 0.73]
'Elixir.Qex':push/2 514 0.35 389 [ 0.76]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 1080 0.35 396 [ 0.37]
'Elixir.Membrane.Core.Element':handle_info/2 566 0.37 411 [ 0.73]
'Elixir.Enum':map/2 1594 0.37 418 [ 0.26]
'Elixir.Membrane.Core.Child.PadModel':update_multi/3 514 0.38 421 [ 0.82]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 1080 0.38 424 [ 0.39]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 566 0.38 425 [ 0.75]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 514 0.38 427 [ 0.83]
'Elixir.Map':update/4 514 0.38 430 [ 0.84]
'Elixir.Bunch.Struct':update_in/3 566 0.38 432 [ 0.76]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 514 0.40 445 [ 0.87]
gen_server:try_dispatch/4 566 0.40 454 [ 0.80]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 1080 0.41 464 [ 0.43]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 514 0.42 469 [ 0.91]
'Elixir.Membrane.Pad.Data':get_and_update/3 2212 0.43 480 [ 0.22]
'Elixir.Enum':split_while_list/3 1080 0.43 483 [ 0.45]
'Elixir.Membrane.Core.InputBuffer':do_take/2 566 0.44 492 [ 0.87]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 2212 0.45 501 [ 0.23]
'Elixir.Bunch.Enum':chunk_by_prev/3 1080 0.45 503 [ 0.47]
'Elixir.Bunch.Access':put_in/3 1132 0.45 507 [ 0.45]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 1080 0.46 511 [ 0.47]
'Elixir.Access':'-key/2-fun-0-'/5 566 0.46 518 [ 0.92]
'Elixir.Enumerable':impl_for/1 2674 0.48 537 [ 0.20]
'Elixir.Kernel':put_in/3 1132 0.48 539 [ 0.48]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 566 0.51 570 [ 1.01]
'Elixir.Qex':pop/1 1080 0.51 574 [ 0.53]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 1080 0.51 577 [ 0.53]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 1080 0.52 586 [ 0.54]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 1028 0.54 601 [ 0.58]
'Elixir.Membrane.Pad.Data':fetch/2 1542 0.54 603 [ 0.39]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 1542 0.54 606 [ 0.39]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 1080 0.54 609 [ 0.56]
'Elixir.Membrane.Core.Element.State':get_and_update/3 2726 0.54 610 [ 0.22]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 514 0.54 610 [ 1.19]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 514 0.54 610 [ 1.19]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 566 0.56 630 [ 1.11]
lists:do_flatten/2 2056 0.57 641 [ 0.31]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 1132 0.59 658 [ 0.58]
'Elixir.Bunch.Access':update_in/3 1594 0.59 667 [ 0.42]
'Elixir.Enum':reverse/1 3240 0.61 686 [ 0.21]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 1594 0.63 708 [ 0.44]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 1594 0.65 725 [ 0.45]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 1698 0.65 734 [ 0.43]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 1080 0.66 740 [ 0.69]
'Elixir.Kernel':update_in/3 1594 0.67 757 [ 0.47]
'Elixir.Enum':drop_while_list/2 2160 0.69 770 [ 0.36]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 514 0.70 782 [ 1.52]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 514 0.72 804 [ 1.56]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 566 0.75 840 [ 1.48]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 1132 0.82 919 [ 0.81]
'Elixir.Membrane.Core.Child.PadModel':'-apply_updates/2-fun-0-'/2 1028 0.87 979 [ 0.95]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 1080 0.93 1038 [ 0.96]
'Elixir.Enumerable':'impl_for!'/1 2674 0.93 1043 [ 0.39]
'Elixir.Enum':reduce_while/3 2674 0.99 1110 [ 0.42]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 566 1.03 1156 [ 2.04]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 514 1.06 1193 [ 2.32]
'Elixir.Enumerable':reduce/3 2674 1.16 1297 [ 0.49]
maps:find/2 5966 1.24 1389 [ 0.23]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 3188 1.28 1435 [ 0.45]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 7664 1.30 1458 [ 0.19]
'Elixir.Enumerable.List':reduce/3 4782 1.34 1499 [ 0.31]
'Elixir.Bunch.Enum':try_reduce/3 2160 1.34 1500 [ 0.69]
'Elixir.Membrane.Core.Element.State':fetch/2 4424 1.47 1651 [ 0.37]
'Elixir.Bunch.Access':get_in/2 4424 1.51 1696 [ 0.38]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 7150 1.51 1698 [ 0.24]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 1080 1.75 1968 [ 1.82]
'Elixir.Map':get/3 11470 2.26 2540 [ 0.22]
erlang:send/2 566 2.28 2561 [ 4.52]
'Elixir.Access':get/2 14866 2.45 2747 [ 0.18]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 6636 2.48 2778 [ 0.42]
'Elixir.Kernel':get_and_update_in/3 10956 2.62 2938 [ 0.27]
'Elixir.Bunch':listify/1 15432 2.66 2985 [ 0.19]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 4424 3.05 3426 [ 0.77]
'Elixir.Access':get_and_update/3 10390 3.06 3429 [ 0.33]
gen_server:loop/7 566 3.90 4375 [ 7.73]
'Elixir.Access':get/3 14866 3.95 4434 [ 0.30]
'Elixir.Kernel':get_in/2 14814 4.11 4616 [ 0.31]
'Elixir.Map':get_and_update/3 10390 8.43 9460 [ 0.91]
----------------------------------------------------------------------------------------- ------ ------- ------ [----------]
Total: 267096 100.00% 112208 [ 0.42]
****** Process <9928.4235.0> -- 0.77 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 514 0.06 139 [ 0.27]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_buffer/5-fun-0-'/2 514 0.06 140 [ 0.27]
'Elixir.Membrane.Buffer.Metric':from_unit/1 514 0.06 147 [ 0.29]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 514 0.06 152 [ 0.30]
'Elixir.Enum':'-take_random/2-fun-0-'/2 514 0.06 155 [ 0.30]
'Elixir.Heap':meld/3 514 0.06 156 [ 0.30]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 514 0.06 156 [ 0.30]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 514 0.06 157 [ 0.31]
'Elixir.Membrane.Time':second/0 514 0.06 157 [ 0.31]
gen_server:try_dispatch/3 566 0.06 157 [ 0.28]
'Elixir.Heap':pair/2 514 0.06 160 [ 0.31]
'Elixir.Membrane.Core.InputBuffer':store/2 514 0.06 160 [ 0.31]
'Elixir.Keyword':get/2 566 0.07 164 [ 0.29]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-0-'/1 514 0.07 164 [ 0.32]
'Elixir.Membrane.RTP.JitterBuffer':'-record_to_action/2-fun-0-'/1 514 0.07 166 [ 0.32]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 514 0.07 166 [ 0.32]
'Elixir.Membrane.Core.Child.PadModel':'-update_multi/3-fun-0-'/2 514 0.07 170 [ 0.33]
'Elixir.Kernel':'-get_and_update_in/3-fun-0-'/3 514 0.07 170 [ 0.33]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 514 0.07 171 [ 0.33]
lists:flatten/1 514 0.07 172 [ 0.33]
queue:in/2 514 0.07 174 [ 0.34]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':shift_ordered/1 514 0.07 178 [ 0.35]
'Elixir.Ratio':'div'/2 514 0.07 180 [ 0.35]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 514 0.07 183 [ 0.36]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 514 0.07 185 [ 0.36]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 566 0.07 187 [ 0.33]
'Elixir.Membrane.Helper.GenServer':noreply/2 566 0.08 191 [ 0.34]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_redemand/2-fun-0-'/2 514 0.08 193 [ 0.38]
'Elixir.Membrane.Core.Child.PadModel':apply_updates/2 514 0.08 196 [ 0.38]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-2-'/2 514 0.08 200 [ 0.39]
'Elixir.Bunch.Enum':try_reduce_while/3 514 0.08 200 [ 0.39]
'Elixir.Membrane.RTP.JitterBuffer':'-handle_process_list/4-fun-0-'/2 514 0.08 200 [ 0.39]
gen_server:decode_msg/9 566 0.08 200 [ 0.35]
'Elixir.List':flatten/1 514 0.08 201 [ 0.39]
gen_server:handle_common_reply/8 566 0.08 210 [ 0.37]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':'is_fresh_packet?'/2 514 0.08 212 [ 0.41]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':'-shift_older_than/2-fun-0-'/3 514 0.09 217 [ 0.42]
'Elixir.Enum':reduce/3 514 0.09 221 [ 0.43]
'Elixir.Membrane.Core.Message':for_pad/1 566 0.09 228 [ 0.40]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':'-shift_ordered/1-fun-0-'/2 514 0.09 229 [ 0.45]
'Elixir.Membrane.RTP.JitterBuffer':'-fun.record_to_action/2-'/2 514 0.09 232 [ 0.45]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':update_end_index/2 514 0.10 244 [ 0.47]
lists:keyfind/3 566 0.10 247 [ 0.44]
'Elixir.Ratio':'/'/2 514 0.10 260 [ 0.51]
'Elixir.MapSet':'member?'/2 514 0.10 260 [ 0.51]
'Elixir.Enum':map_reduce/3 514 0.11 271 [ 0.53]
erlang:max/2 1132 0.11 278 [ 0.25]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 1080 0.11 279 [ 0.26]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 1080 0.11 286 [ 0.26]
'Elixir.Ratio':trunc/1 514 0.12 289 [ 0.56]
'Elixir.Membrane.RTP.JitterBuffer':handle_demand/5 566 0.12 292 [ 0.52]
'Elixir.Membrane.Core.Child.PadModel':'update_multi!'/3 514 0.12 297 [ 0.58]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 1028 0.12 305 [ 0.30]
erlang:system_time/0 514 0.13 314 [ 0.61]
'Elixir.Ratio':mult/2 514 0.13 315 [ 0.61]
'Elixir.Enum':'-take_random/2-anonymous-4-'/3 514 0.13 315 [ 0.61]
'Elixir.Bunch.Struct':'-put_in/3-anonymous-0-'/1 1028 0.13 321 [ 0.31]
'Elixir.Membrane.RTP.JitterBuffer.State':get_and_update/3 1028 0.13 325 [ 0.32]
'Elixir.Bunch.Enum':try_each/2 514 0.13 329 [ 0.64]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':shift_while/2 1028 0.13 330 [ 0.32]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 566 0.13 332 [ 0.59]
'Elixir.Enum':min_sort_fun/1 1028 0.14 339 [ 0.33]
'Elixir.Keyword':get/3 566 0.14 341 [ 0.60]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 1080 0.14 342 [ 0.32]
maps:keys/1 514 0.14 343 [ 0.67]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':bump_prev_index/1 514 0.14 344 [ 0.67]
'Elixir.Enumerable.MapSet':reduce/3 514 0.14 345 [ 0.67]
maps:merge/2 514 0.14 353 [ 0.69]
'Elixir.Membrane.RTP.JitterBuffer':handle_process_list/4 514 0.14 355 [ 0.69]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 566 0.14 358 [ 0.63]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 566 0.15 365 [ 0.64]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 566 0.15 367 [ 0.65]
'Elixir.MapSet':to_list/1 514 0.15 368 [ 0.72]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':first_record_timestamp/1 514 0.15 374 [ 0.73]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 1080 0.15 379 [ 0.35]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':'-from_which_cycle/2-fun-0-'/1 1542 0.15 380 [ 0.25]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 514 0.15 383 [ 0.75]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 1594 0.15 384 [ 0.24]
'Elixir.Membrane.Core.Message':send/4 566 0.15 387 [ 0.68]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':shift_older_than/2 514 0.15 387 [ 0.75]
gen_server:handle_msg/6 566 0.15 387 [ 0.68]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 1080 0.16 389 [ 0.36]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 514 0.16 396 [ 0.77]
'Elixir.Bunch.Enum':do_try_each/2 1028 0.16 396 [ 0.39]
'Elixir.Membrane.RTP.JitterBuffer':'-record_to_action/2-fun-1-'/1 1542 0.16 396 [ 0.26]
gen_server:try_dispatch/4 566 0.16 400 [ 0.71]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 514 0.16 403 [ 0.78]
'Elixir.Enum':split_while/2 1594 0.16 406 [ 0.25]
'Elixir.Qex':push/2 514 0.16 407 [ 0.79]
'Elixir.Membrane.Core.Child.PadModel':update_multi/3 514 0.16 409 [ 0.80]
erts_internal:time_unit/0 1542 0.16 410 [ 0.27]
'Elixir.Enum':min_by/2 1028 0.17 414 [ 0.40]
'Elixir.Enum':take_random/2 514 0.17 414 [ 0.81]
'Elixir.Membrane.Time':as_seconds/1 514 0.17 419 [ 0.82]
queue:out/1 1594 0.17 420 [ 0.26]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 514 0.17 422 [ 0.82]
'Elixir.Membrane.Core.InputBuffer':store/3 514 0.17 424 [ 0.82]
'Elixir.Membrane.Core.Element.ActionHandler':handle_redemand/2 514 0.17 426 [ 0.83]
'Elixir.Ratio':remove_denominator_if_integer/1 1542 0.17 431 [ 0.28]
maps:remove/2 1028 0.17 436 [ 0.42]
'Elixir.Bunch.Struct':put_in/3 514 0.18 439 [ 0.85]
'Elixir.Ratio':abs/1 1542 0.18 446 [ 0.29]
'Elixir.Enum':drop_while/2 1594 0.18 448 [ 0.28]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 514 0.18 449 [ 0.87]
'Elixir.Map':update/4 514 0.18 459 [ 0.89]
lists:reverse/1 1594 0.18 462 [ 0.29]
'Elixir.Ratio':'<'/2 1542 0.19 473 [ 0.31]
'Elixir.Map':'update!'/3 514 0.19 473 [ 0.92]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 2108 0.19 486 [ 0.23]
'Elixir.Bunch.Access':get_and_update_in/3 1080 0.20 490 [ 0.45]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 2108 0.20 495 [ 0.23]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 1080 0.20 499 [ 0.46]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 514 0.20 511 [ 0.99]
'Elixir.MapSet':put/2 1028 0.21 515 [ 0.50]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':insert_buffer/2 514 0.21 518 [ 1.01]
'Elixir.Enum':to_list/1 2108 0.21 520 [ 0.25]
'Elixir.Ratio':'=='/2 1542 0.21 524 [ 0.34]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 1594 0.21 530 [ 0.33]
'Elixir.Heap':pop/1 514 0.21 530 [ 1.03]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 514 0.21 531 [ 1.03]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 2212 0.21 533 [ 0.24]
erlang:monotonic_time/0 1028 0.21 533 [ 0.52]
'Elixir.Membrane.RTP.JitterBuffer.Record':new/2 514 0.22 548 [ 1.07]
'Elixir.Membrane.RTP.JitterBuffer':set_timer/1 514 0.22 552 [ 1.07]
'Elixir.Membrane.Core.Element':handle_info/2 566 0.22 558 [ 0.99]
'Elixir.Membrane.Core.Child.PadModel':'-apply_updates/2-fun-0-'/2 1028 0.22 560 [ 0.54]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 566 0.23 578 [ 1.02]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 566 0.24 591 [ 1.04]
'Elixir.Heap':push/2 514 0.24 597 [ 1.16]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 566 0.25 623 [ 1.10]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 514 0.25 630 [ 1.23]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 1080 0.25 633 [ 0.59]
'Elixir.Membrane.Pad.Data':fetch/2 1542 0.25 634 [ 0.41]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 514 0.25 637 [ 1.24]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':from_which_cycle/2 514 0.26 656 [ 1.28]
'Elixir.Membrane.Core.Element.DemandHandler':handle_redemand/2 1028 0.26 660 [ 0.64]
'Elixir.Enum':'-map_reduce/3-lists^mapfoldl/2-0-'/3 1028 0.27 663 [ 0.64]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 1594 0.27 679 [ 0.43]
erlang:'=<'/2 2056 0.27 681 [ 0.33]
'Elixir.Membrane.Time':vm_time/0 514 0.27 686 [ 1.33]
lists:do_flatten/2 2056 0.28 688 [ 0.33]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 1542 0.28 690 [ 0.45]
'Elixir.Heap':root/1 2570 0.28 699 [ 0.27]
'Elixir.System':normalize_time_unit/1 3084 0.28 702 [ 0.23]
'Elixir.Access':key/2 2108 0.28 708 [ 0.34]
'Elixir.MapSet':delete/2 1028 0.28 709 [ 0.69]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 1080 0.29 721 [ 0.67]
'Elixir.Ratio':normalize_denom_num/2 1542 0.29 737 [ 0.48]
'Elixir.Ratio':'eq?'/2 1542 0.30 751 [ 0.49]
'Elixir.Enum':map/2 2622 0.30 755 [ 0.29]
'Elixir.Enum':min_by/4 1028 0.30 757 [ 0.74]
'Elixir.Ratio':compare/2 3084 0.30 759 [ 0.25]
'Elixir.Ratio':'lt?'/2 1542 0.31 772 [ 0.50]
'Elixir.Enum':'-aggregate_by/4-fun-0-'/2 1028 0.31 776 [ 0.75]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 514 0.33 814 [ 1.58]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 1594 0.33 825 [ 0.52]
'Elixir.Bunch.Enum':chunk_by_prev/3 1594 0.34 839 [ 0.53]
'Elixir.Membrane.Time':monotonic_time/0 1028 0.34 840 [ 0.82]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 3702 0.34 846 [ 0.23]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 3754 0.34 848 [ 0.23]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 1028 0.34 860 [ 0.84]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 2108 0.34 861 [ 0.41]
'Elixir.Membrane.Pad.Data':get_and_update/3 3754 0.36 899 [ 0.24]
'Elixir.Enumerable':impl_for/1 4216 0.36 900 [ 0.21]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 1594 0.37 914 [ 0.57]
'Elixir.Bunch.Access':update_in/3 2108 0.37 931 [ 0.44]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 514 0.38 940 [ 1.83]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 566 0.38 941 [ 1.66]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 2108 0.38 946 [ 0.45]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 2160 0.39 983 [ 0.46]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 1594 0.41 1019 [ 0.64]
'Elixir.Enum':split_while_list/3 2108 0.41 1036 [ 0.49]
'Elixir.Membrane.Core.InputBuffer':do_take/2 1080 0.42 1048 [ 0.97]
'Elixir.Membrane.RTP.JitterBuffer':handle_process/4 514 0.42 1059 [ 2.06]
'Elixir.Membrane.Core.Element.State':get_and_update/3 4268 0.43 1063 [ 0.25]
'Elixir.Qex':pop/1 1594 0.43 1081 [ 0.68]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 2108 0.44 1088 [ 0.52]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 2108 0.44 1091 [ 0.52]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':shift/1 514 0.44 1096 [ 2.13]
'Elixir.Enum':aggregate_by/4 1028 0.44 1109 [ 1.08]
'Elixir.Ratio':'<|>'/2 1542 0.44 1110 [ 0.72]
'Elixir.Kernel':update_in/3 2108 0.45 1126 [ 0.53]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':do_insert_buffer/3 514 0.46 1144 [ 2.23]
'Elixir.System':convert_time_unit/3 1542 0.46 1151 [ 0.75]
erlang:'++'/2 2622 0.46 1154 [ 0.44]
'Elixir.Bunch.Struct':update_in/3 1080 0.46 1156 [ 1.07]
'Elixir.Bunch.Enum':try_reduce/3 3188 0.47 1172 [ 0.37]
'Elixir.Bunch.Access':put_in/3 2674 0.48 1197 [ 0.45]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 1080 0.49 1214 [ 1.12]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 2622 0.49 1223 [ 0.47]
'Elixir.Enum':'-aggregate_by/4-lists^foldl/2-0-'/3 3084 0.50 1240 [ 0.40]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 1594 0.50 1262 [ 0.79]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 566 0.51 1275 [ 2.25]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':add_record/2 514 0.53 1336 [ 2.60]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 3240 0.54 1352 [ 0.42]
'Elixir.Enum':drop_while_list/2 3188 0.55 1367 [ 0.43]
'Elixir.Membrane.RTP.JitterBuffer':send_buffers/1 514 0.57 1414 [ 2.75]
'Elixir.Enum':reverse/1 6324 0.57 1436 [ 0.23]
'Elixir.Enum':reduce_while/3 3702 0.63 1583 [ 0.43]
'Elixir.Enum':'-aggregate_by/4-fun-1-'/4 2056 0.66 1648 [ 0.80]
'Elixir.Membrane.RTP.JitterBuffer':record_to_action/2 514 0.68 1690 [ 3.29]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':shift_while/3 1542 0.68 1691 [ 1.10]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 1594 0.68 1709 [ 1.07]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 2160 0.69 1732 [ 0.80]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 1080 0.70 1742 [ 1.61]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 2108 0.70 1748 [ 0.83]
'Elixir.Enumerable':'impl_for!'/1 4216 0.73 1826 [ 0.43]
'Elixir.Kernel':put_in/3 3702 0.78 1948 [ 0.53]
'Elixir.Membrane.RTP.JitterBuffer':update_jitter/2 514 0.79 1969 [ 3.83]
'Elixir.Ratio':simplify/1 1542 0.82 2048 [ 1.33]
'Elixir.Access':'-key/2-fun-0-'/5 2108 0.88 2206 [ 1.05]
'Elixir.Enumerable':reduce/3 4216 0.94 2349 [ 0.56]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 13318 1.08 2709 [ 0.20]
'Elixir.Enumerable.List':reduce/3 7866 1.09 2726 [ 0.35]
erlang:convert_time_unit/3 1542 1.09 2734 [ 1.77]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 5758 1.10 2742 [ 0.48]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 1594 1.17 2922 [ 1.83]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 11776 1.18 2962 [ 0.25]
'Elixir.Bunch.Access':get_in/2 7508 1.21 3027 [ 0.40]
maps:find/2 9050 1.21 3028 [ 0.33]
'Elixir.Membrane.Core.Element.State':fetch/2 7508 1.24 3097 [ 0.41]
erlang:send/2 566 1.49 3723 [ 6.58]
'Elixir.Ratio':gcd/2 16470 1.54 3841 [ 0.23]
'Elixir.Access':get/2 24632 1.83 4575 [ 0.19]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 11262 1.87 4682 [ 0.42]
'Elixir.Map':get/3 21750 2.04 5102 [ 0.23]
'Elixir.Bunch':listify/1 26740 2.25 5622 [ 0.21]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 7508 2.40 5994 [ 0.80]
'Elixir.Kernel':get_and_update_in/3 20722 2.72 6809 [ 0.33]
'Elixir.Access':get_and_update/3 18614 2.86 7158 [ 0.38]
'Elixir.Kernel':get_in/2 24066 3.01 7516 [ 0.31]
'Elixir.Access':get/3 24632 3.05 7628 [ 0.31]
gen_server:loop/7 566 3.81 9528 [ 16.83]
'Elixir.Map':get_and_update/3 18614 7.26 18149 [ 0.98]
----------------------------------------------------------------------------------------- ------ ------- ------ [----------]
Total: 534912 100.00% 250007 [ 0.47]
****** Process <9928.4236.0> -- 0.37 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.Core.Element.EventController':exec_handle_event/3 2 0.00 0 [ 0.00]
'Elixir.Membrane.EventProtocol.Any':'async?'/1 2 0.00 0 [ 0.00]
'Elixir.Membrane.EventProtocol.Any':'sticky?'/1 2 0.00 0 [ 0.00]
'Elixir.Membrane.Event':'async?'/1 2 0.00 0 [ 0.00]
'Elixir.Membrane.Core.Child.PadModel':'assert_instance!'/2 2 0.00 1 [ 0.50]
'Elixir.Membrane.Core.Element.EventController':'buffers_before_event_present?'/1 2 0.00 1 [ 0.50]
'Elixir.Membrane.Core.Element.EventController':check_sync/2 2 0.00 1 [ 0.50]
'Elixir.Membrane.Core.Element.EventController':handle_special_event/3 2 0.00 1 [ 0.50]
'Elixir.Membrane.Event':'sticky?'/1 2 0.00 1 [ 0.50]
'Elixir.Membrane.EventProtocol':'impl_for!'/1 4 0.00 1 [ 0.25]
'Elixir.Membrane.Core.Element.EventController':do_exec_handle_event/4 2 0.00 2 [ 1.00]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-6-'/3 2 0.00 2 [ 1.00]
'Elixir.Membrane.EventProtocol':'async?'/1 2 0.00 2 [ 1.00]
'Elixir.Ratio':floor/1 10 0.00 3 [ 0.30]
'Elixir.Membrane.Core.Element.ActionHandler':handle_event/3 10 0.00 3 [ 0.30]
'Elixir.Membrane.RTCP.Receiver':'-send_fir/1-fun-0-'/1 10 0.00 3 [ 0.30]
'Elixir.Membrane.Core.Element.EventController':exec_handle_event/4 2 0.00 3 [ 1.50]
'Elixir.Membrane.Core.Element.EventController':'-do_exec_handle_event/4-fun-0-'/1 2 0.00 3 [ 1.50]
'Elixir.Membrane.EventProtocol':'sticky?'/1 2 0.00 3 [ 1.50]
'Elixir.Ratio':abs/1 10 0.00 4 [ 0.40]
'Elixir.Ratio':remove_denominator_if_integer/1 10 0.00 4 [ 0.40]
'Elixir.Membrane.Core.Element.EventController':handle_event/3 2 0.00 4 [ 2.00]
'Elixir.Membrane.Core.Component':action_handler/1 10 0.00 4 [ 0.40]
'Elixir.Ratio':'/'/2 10 0.00 5 [ 0.50]
'Elixir.Ratio':'<'/2 10 0.00 5 [ 0.50]
'Elixir.Ratio':'=='/2 10 0.00 5 [ 0.50]
'Elixir.Membrane.RTCP.Receiver':handle_event/4 2 0.00 5 [ 2.50]
'Elixir.Membrane.RTCP.Receiver':handle_tick/3 10 0.00 5 [ 0.50]
'Elixir.Membrane.EventProtocol':impl_for/1 14 0.00 5 [ 0.36]
'Elixir.Ratio':'+'/2 20 0.01 6 [ 0.30]
'Elixir.Ratio':'eq?'/2 10 0.01 6 [ 0.60]
'Elixir.Membrane.Time':to_milliseconds/1 10 0.01 6 [ 0.60]
'Elixir.Ratio':'lt?'/2 10 0.01 7 [ 0.70]
'Elixir.Ratio':normalize_denom_num/2 10 0.01 7 [ 0.70]
'Elixir.Ratio':gcd/2 20 0.01 8 [ 0.40]
'Elixir.Ratio':compare/2 20 0.01 9 [ 0.45]
'Elixir.Membrane.Time':to_ntp_timestamp/1 2 0.01 9 [ 4.50]
'Elixir.Membrane.Event':'event?'/1 10 0.01 9 [ 0.90]
'Elixir.Map':'update!'/3 10 0.01 13 [ 1.30]
'Elixir.Membrane.Core.TimerController':'-handle_tick/2-fun-2-'/1 10 0.01 15 [ 1.50]
'Elixir.Ratio':simplify/1 10 0.02 18 [ 1.80]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 52 0.02 18 [ 0.35]
'Elixir.Membrane.RTCP.Receiver':handle_demand/5 52 0.02 21 [ 0.40]
'Elixir.Membrane.Core.Element.ActionHandler':send_event/3 10 0.02 22 [ 2.20]
'Elixir.Ratio':'<|>'/2 10 0.02 28 [ 2.80]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 52 0.03 30 [ 0.58]
'Elixir.Membrane.Core.TimerController':handle_tick/2 10 0.03 30 [ 3.00]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 52 0.03 31 [ 0.60]
'Elixir.Membrane.RTCP.Receiver':send_fir/1 10 0.03 32 [ 3.20]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 52 0.03 32 [ 0.62]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 52 0.03 32 [ 0.62]
erlang:send_after/4 10 0.03 35 [ 3.50]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 52 0.03 41 [ 0.79]
'Elixir.Membrane.Core.Timer':tick/1 10 0.05 57 [ 5.70]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 52 0.05 59 [ 1.13]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 52 0.07 86 [ 1.65]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 514 0.13 152 [ 0.30]
'Elixir.Membrane.Buffer.Metric':from_unit/1 514 0.13 153 [ 0.30]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 514 0.13 154 [ 0.30]
lists:flatten/1 514 0.13 160 [ 0.31]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 566 0.14 163 [ 0.29]
queue:in/2 514 0.14 166 [ 0.32]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 514 0.14 166 [ 0.32]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_buffer/5-fun-0-'/2 514 0.14 167 [ 0.32]
gen_server:try_dispatch/3 578 0.14 170 [ 0.29]
'Elixir.Membrane.Core.Child.PadModel':'-update_multi/3-fun-0-'/2 514 0.14 171 [ 0.33]
'Elixir.Membrane.Core.InputBuffer':store/2 514 0.14 171 [ 0.33]
'Elixir.Keyword':get/2 568 0.15 176 [ 0.31]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 514 0.15 177 [ 0.34]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 566 0.15 182 [ 0.32]
'Elixir.Membrane.RTCP.Receiver':'-handle_process_list/4-fun-0-'/2 514 0.16 189 [ 0.37]
'Elixir.List':flatten/1 514 0.16 189 [ 0.37]
maps:merge/2 516 0.16 191 [ 0.37]
'Elixir.Membrane.Core.Child.PadModel':apply_updates/2 514 0.16 191 [ 0.37]
'Elixir.Membrane.Helper.GenServer':noreply/2 578 0.16 193 [ 0.33]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 674 0.16 194 [ 0.29]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 514 0.16 194 [ 0.38]
gen_server:handle_common_reply/8 578 0.16 194 [ 0.34]
'Elixir.Enum':reduce/3 514 0.17 198 [ 0.39]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 516 0.17 201 [ 0.39]
'Elixir.Bunch.Enum':try_reduce_while/3 514 0.18 209 [ 0.41]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 514 0.18 213 [ 0.41]
'Elixir.Membrane.Core.Message':for_pad/1 568 0.18 214 [ 0.38]
erlang:max/2 618 0.18 214 [ 0.35]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 566 0.18 218 [ 0.39]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 566 0.19 221 [ 0.39]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 566 0.19 231 [ 0.41]
'Elixir.Membrane.RTCP.Receiver':handle_process/4 514 0.20 241 [ 0.47]
'Elixir.Access':key/2 566 0.20 243 [ 0.43]
lists:keyfind/3 568 0.22 268 [ 0.47]
'Elixir.Membrane.Core.Child.PadModel':'update_multi!'/3 514 0.23 270 [ 0.53]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 1132 0.23 270 [ 0.24]
'Elixir.Enum':split_while/2 1092 0.24 282 [ 0.26]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 1094 0.24 283 [ 0.26]
gen_server:decode_msg/9 578 0.24 284 [ 0.49]
queue:out/1 1080 0.24 288 [ 0.27]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 1090 0.24 289 [ 0.27]
'Elixir.Bunch.Enum':try_each/2 514 0.25 298 [ 0.58]
'Elixir.Enum':drop_while/2 1092 0.26 306 [ 0.28]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 578 0.26 308 [ 0.53]
lists:reverse/1 1092 0.26 310 [ 0.28]
'Elixir.Bunch.Access':get_and_update_in/3 566 0.26 312 [ 0.55]
'Elixir.Membrane.Core.Message':send/4 576 0.27 317 [ 0.55]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 1090 0.27 324 [ 0.30]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 1092 0.29 342 [ 0.31]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 1028 0.29 347 [ 0.34]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 514 0.29 349 [ 0.68]
gen_server:handle_msg/6 578 0.30 352 [ 0.61]
erlang:'++'/2 1092 0.30 358 [ 0.33]
'Elixir.Membrane.RTCP.Receiver':handle_process_list/4 514 0.31 375 [ 0.73]
'Elixir.Bunch.Enum':do_try_each/2 1028 0.31 375 [ 0.36]
'Elixir.Enum':to_list/1 1606 0.32 378 [ 0.24]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 514 0.32 379 [ 0.74]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 566 0.32 383 [ 0.68]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 566 0.33 398 [ 0.70]
'Elixir.Keyword':get/3 568 0.34 407 [ 0.72]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 514 0.35 413 [ 0.80]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 1092 0.35 415 [ 0.38]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 514 0.35 421 [ 0.82]
'Elixir.Membrane.Core.InputBuffer':store/3 514 0.35 421 [ 0.82]
'Elixir.Qex':push/2 514 0.36 426 [ 0.83]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 566 0.36 432 [ 0.76]
gen_server:try_dispatch/4 578 0.37 437 [ 0.76]
'Elixir.Enum':map/2 1594 0.37 443 [ 0.28]
'Elixir.Membrane.Core.Child.PadModel':update_multi/3 514 0.37 446 [ 0.87]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 514 0.39 459 [ 0.89]
'Elixir.Membrane.Core.Element':handle_info/2 578 0.39 465 [ 0.80]
'Elixir.Bunch.Struct':update_in/3 566 0.40 473 [ 0.84]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 514 0.40 479 [ 0.93]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 2222 0.40 482 [ 0.22]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 1092 0.42 497 [ 0.46]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 1090 0.43 508 [ 0.47]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 514 0.43 511 [ 0.99]
'Elixir.Enum':split_while_list/3 1092 0.44 523 [ 0.48]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 1132 0.44 524 [ 0.46]
'Elixir.Bunch.Access':put_in/3 1132 0.44 530 [ 0.47]
'Elixir.Access':'-key/2-fun-0-'/5 566 0.46 547 [ 0.97]
'Elixir.Membrane.Core.InputBuffer':do_take/2 566 0.47 556 [ 0.98]
'Elixir.Bunch.Enum':chunk_by_prev/3 1092 0.50 593 [ 0.54]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 1090 0.50 594 [ 0.54]
'Elixir.Enumerable':impl_for/1 2686 0.50 596 [ 0.22]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 514 0.50 599 [ 1.17]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 568 0.51 603 [ 1.06]
'Elixir.Kernel':put_in/3 1132 0.51 607 [ 0.54]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 514 0.51 610 [ 1.19]
'Elixir.Membrane.Pad.Data':get_and_update/3 2212 0.52 615 [ 0.28]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 1090 0.53 632 [ 0.58]
'Elixir.Membrane.Core.Element.State':get_and_update/3 2736 0.54 641 [ 0.23]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 1542 0.54 642 [ 0.42]
'Elixir.Membrane.Pad.Data':fetch/2 1542 0.55 652 [ 0.42]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 1092 0.55 658 [ 0.60]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 1080 0.55 659 [ 0.61]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 566 0.56 664 [ 1.17]
'Elixir.Qex':pop/1 1080 0.56 668 [ 0.62]
'Elixir.Membrane.Core.Child.PadModel':'-apply_updates/2-fun-0-'/2 1028 0.56 672 [ 0.65]
'Elixir.Map':update/4 514 0.57 674 [ 1.31]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 514 0.57 679 [ 1.32]
lists:do_flatten/2 2056 0.58 692 [ 0.34]
'Elixir.Bunch.Access':update_in/3 1604 0.59 703 [ 0.44]
'Elixir.Enum':reverse/1 3260 0.60 714 [ 0.22]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 1702 0.62 738 [ 0.43]
'Elixir.Bunch.Enum':try_reduce/3 2172 0.63 748 [ 0.34]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 1604 0.64 765 [ 0.48]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 1090 0.68 806 [ 0.74]
'Elixir.Kernel':update_in/3 1604 0.69 820 [ 0.51]
'Elixir.Enum':drop_while_list/2 2182 0.69 823 [ 0.38]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 1028 0.69 826 [ 0.80]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 1604 0.70 831 [ 0.52]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 514 0.72 859 [ 1.67]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 514 0.73 865 [ 1.68]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 566 0.78 927 [ 1.64]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 1132 0.79 943 [ 0.83]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 1092 0.91 1089 [ 1.00]
'Elixir.Enum':reduce_while/3 2686 1.00 1190 [ 0.44]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 568 1.09 1300 [ 2.29]
'Elixir.Enumerable':'impl_for!'/1 2686 1.10 1309 [ 0.49]
'Elixir.Enumerable':reduce/3 2686 1.14 1355 [ 0.50]
maps:find/2 5980 1.24 1474 [ 0.25]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 3188 1.28 1521 [ 0.48]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 7684 1.28 1522 [ 0.20]
'Elixir.Enumerable.List':reduce/3 4804 1.33 1585 [ 0.33]
'Elixir.Membrane.Core.Element.State':fetch/2 4438 1.49 1781 [ 0.40]
'Elixir.Bunch.Access':get_in/2 4438 1.54 1835 [ 0.41]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 7166 1.63 1936 [ 0.27]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 1092 1.83 2182 [ 2.00]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 6650 2.21 2638 [ 0.40]
erlang:send/2 576 2.22 2646 [ 4.59]
'Elixir.Map':get/3 11500 2.28 2711 [ 0.24]
'Elixir.Access':get/2 14908 2.34 2785 [ 0.19]
'Elixir.Kernel':get_and_update_in/3 10986 2.72 3243 [ 0.30]
'Elixir.Bunch':listify/1 15470 2.83 3374 [ 0.22]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 4438 3.01 3588 [ 0.81]
'Elixir.Access':get_and_update/3 10420 3.17 3780 [ 0.36]
'Elixir.Access':get/3 14908 3.95 4700 [ 0.32]
'Elixir.Kernel':get_in/2 14856 3.96 4718 [ 0.32]
gen_server:loop/7 578 4.06 4832 [ 8.36]
'Elixir.Map':get_and_update/3 10420 8.10 9656 [ 0.93]
----------------------------------------------------------------------------------------- ------ ------- ------ [----------]
Total: 268406 100.00% 119137 [ 0.44]
****** Process <9928.4237.0> -- 0.39 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 52 0.02 22 [ 0.42]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 52 0.02 32 [ 0.62]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 52 0.03 35 [ 0.67]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 52 0.03 36 [ 0.69]
'Elixir.Membrane.SRTP.Decryptor':handle_demand/5 52 0.03 40 [ 0.77]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 52 0.04 47 [ 0.90]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 52 0.04 50 [ 0.96]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 52 0.05 60 [ 1.15]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 52 0.07 85 [ 1.63]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 514 0.11 138 [ 0.27]
'Elixir.Membrane.Buffer.Metric':from_unit/1 514 0.11 143 [ 0.28]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 514 0.11 146 [ 0.28]
lists:flatten/1 514 0.12 151 [ 0.29]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 514 0.12 152 [ 0.30]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 566 0.12 154 [ 0.27]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 514 0.12 155 [ 0.30]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 514 0.12 156 [ 0.30]
'Elixir.Membrane.Core.InputBuffer':store/2 514 0.13 163 [ 0.32]
'Elixir.Membrane.Core.Child.PadModel':'-update_multi/3-fun-0-'/2 514 0.13 164 [ 0.32]
erlang:max/2 618 0.13 167 [ 0.27]
'Elixir.Keyword':get/2 566 0.13 168 [ 0.30]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 566 0.13 168 [ 0.30]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 514 0.13 169 [ 0.33]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 514 0.13 173 [ 0.34]
'Elixir.Bunch.Enum':try_reduce_while/3 514 0.14 174 [ 0.34]
gen_server:try_dispatch/3 566 0.14 174 [ 0.31]
'Elixir.List':flatten/1 514 0.14 176 [ 0.34]
queue:in/2 514 0.14 179 [ 0.35]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 566 0.14 182 [ 0.32]
'Elixir.Membrane.Core.Child.PadModel':apply_updates/2 514 0.15 187 [ 0.36]
maps:merge/2 514 0.15 190 [ 0.37]
'Elixir.Membrane.RTP.Utils':strip_padding/2 514 0.15 190 [ 0.37]
'Elixir.Access':key/2 566 0.15 191 [ 0.34]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 514 0.15 194 [ 0.38]
'Elixir.Membrane.SRTP.Decryptor':'-handle_process_list/4-fun-0-'/2 514 0.15 194 [ 0.38]
'Elixir.Membrane.Helper.GenServer':noreply/2 566 0.15 197 [ 0.35]
gen_server:handle_common_reply/8 566 0.16 202 [ 0.36]
'Elixir.Enum':reduce/3 514 0.16 207 [ 0.40]
'Elixir.ExLibSRTP':unprotect/2 514 0.16 208 [ 0.40]
'Elixir.Membrane.Core.Message':for_pad/1 566 0.17 217 [ 0.38]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 566 0.17 218 [ 0.39]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 670 0.17 219 [ 0.33]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 566 0.17 224 [ 0.40]
gen_server:decode_msg/9 566 0.18 232 [ 0.41]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 1080 0.20 252 [ 0.23]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 1132 0.20 262 [ 0.23]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 1080 0.21 264 [ 0.24]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 1080 0.21 271 [ 0.25]
'Elixir.Enum':split_while/2 1080 0.21 271 [ 0.25]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 1028 0.21 272 [ 0.26]
queue:out/1 1080 0.22 281 [ 0.26]
'Elixir.Bunch.Enum':try_each/2 514 0.22 281 [ 0.55]
'Elixir.ExLibSRTP':unprotect/3 514 0.23 291 [ 0.57]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 566 0.23 293 [ 0.52]
lists:reverse/1 1080 0.23 294 [ 0.27]
lists:keyfind/3 566 0.23 296 [ 0.52]
'Elixir.Membrane.Core.Child.PadModel':'update_multi!'/3 514 0.23 298 [ 0.58]
'Elixir.Bunch.Access':get_and_update_in/3 566 0.23 298 [ 0.53]
'Elixir.ExLibSRTP.Native':unprotect/4 514 0.24 309 [ 0.60]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 1080 0.25 316 [ 0.29]
'Elixir.Membrane.Core.Message':send/4 566 0.25 320 [ 0.57]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_buffer/5-fun-0-'/2 514 0.25 325 [ 0.63]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 514 0.25 327 [ 0.64]
'Elixir.Enum':drop_while/2 1080 0.27 344 [ 0.32]
erlang:'++'/2 1080 0.28 354 [ 0.33]
'Elixir.Bunch.Enum':do_try_each/2 1028 0.28 362 [ 0.35]
'Elixir.Membrane.SRTP.Decryptor':handle_process_list/4 514 0.29 366 [ 0.71]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 514 0.29 367 [ 0.71]
'Elixir.Keyword':get/3 566 0.29 374 [ 0.66]
'Elixir.Enum':to_list/1 1594 0.29 374 [ 0.23]
gen_server:handle_msg/6 566 0.30 384 [ 0.68]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 566 0.30 386 [ 0.68]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 514 0.30 388 [ 0.75]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 566 0.31 395 [ 0.70]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 1080 0.31 398 [ 0.37]
'Elixir.Qex':push/2 514 0.32 406 [ 0.79]
'Elixir.Membrane.Core.Child.PadModel':update_multi/3 514 0.32 411 [ 0.80]
'Elixir.Enum':map/2 1594 0.33 419 [ 0.26]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 514 0.33 424 [ 0.82]
'Elixir.Membrane.Core.InputBuffer':store/3 514 0.34 431 [ 0.84]
gen_server:try_dispatch/4 566 0.34 432 [ 0.76]
'Elixir.Bunch.Struct':update_in/3 566 0.34 442 [ 0.78]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 566 0.36 464 [ 0.82]
'Elixir.Membrane.Core.Element':handle_info/2 566 0.38 488 [ 0.86]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 2212 0.38 489 [ 0.22]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 1080 0.38 494 [ 0.46]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 1080 0.39 496 [ 0.46]
'Elixir.Membrane.Pad.Data':get_and_update/3 2212 0.39 499 [ 0.23]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 514 0.40 512 [ 1.00]
'Elixir.Enum':split_while_list/3 1080 0.41 524 [ 0.49]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 514 0.42 534 [ 1.04]
'Elixir.Bunch.Access':put_in/3 1132 0.42 539 [ 0.48]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 514 0.43 552 [ 1.07]
'Elixir.Membrane.Core.InputBuffer':do_take/2 566 0.43 554 [ 0.98]
'Elixir.Access':'-key/2-fun-0-'/5 566 0.44 571 [ 1.01]
'Elixir.Kernel':put_in/3 1132 0.45 573 [ 0.51]
'Elixir.Bunch.Enum':chunk_by_prev/3 1080 0.45 575 [ 0.53]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 1132 0.45 577 [ 0.51]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 1080 0.45 579 [ 0.54]
'Elixir.Qex':pop/1 1080 0.46 596 [ 0.55]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 514 0.47 600 [ 1.17]
'Elixir.Enumerable':impl_for/1 2674 0.47 609 [ 0.23]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 566 0.48 615 [ 1.09]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 1542 0.48 619 [ 0.40]
lists:do_flatten/2 2056 0.49 634 [ 0.31]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 1080 0.50 640 [ 0.59]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 1028 0.51 649 [ 0.63]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 566 0.51 649 [ 1.15]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 1080 0.51 658 [ 0.61]
'Elixir.Membrane.Pad.Data':fetch/2 1542 0.52 664 [ 0.43]
'Elixir.Membrane.Core.Element.State':get_and_update/3 2726 0.53 684 [ 0.25]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 1080 0.54 689 [ 0.64]
'Elixir.Enum':reverse/1 3240 0.54 693 [ 0.21]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 514 0.55 706 [ 1.37]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 1698 0.56 717 [ 0.42]
'Elixir.Membrane.Core.Child.PadModel':'-apply_updates/2-fun-0-'/2 1028 0.56 718 [ 0.70]
'Elixir.Map':update/4 514 0.57 728 [ 1.42]
'Elixir.Bunch.Access':update_in/3 1594 0.57 734 [ 0.46]
'Elixir.Bunch.Enum':try_reduce/3 2160 0.57 734 [ 0.34]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 1594 0.58 745 [ 0.47]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 1080 0.58 748 [ 0.69]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 1594 0.60 770 [ 0.48]
'Elixir.Enum':drop_while_list/2 2160 0.61 778 [ 0.36]
'Elixir.Kernel':update_in/3 1594 0.62 798 [ 0.50]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 514 0.68 878 [ 1.71]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 514 0.69 881 [ 1.71]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 566 0.72 920 [ 1.63]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 1132 0.74 951 [ 0.84]
'Elixir.Enumerable':'impl_for!'/1 2674 0.87 1122 [ 0.42]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 1080 0.89 1146 [ 1.06]
'Elixir.Membrane.SRTP.Decryptor':handle_process/4 514 1.00 1288 [ 2.51]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 566 1.02 1312 [ 2.32]
'Elixir.Enum':reduce_while/3 2674 1.03 1325 [ 0.50]
'Elixir.Enumerable':reduce/3 2674 1.04 1334 [ 0.50]
maps:find/2 5966 1.16 1484 [ 0.25]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 3188 1.16 1492 [ 0.47]
'Elixir.Enumerable.List':reduce/3 4782 1.20 1541 [ 0.32]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 7664 1.30 1663 [ 0.22]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 7150 1.40 1799 [ 0.25]
'Elixir.Membrane.Core.Element.State':fetch/2 4424 1.42 1821 [ 0.41]
'Elixir.Bunch.Access':get_in/2 4424 1.42 1824 [ 0.41]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 1080 1.71 2201 [ 2.04]
'Elixir.Map':get/3 11470 2.01 2587 [ 0.23]
erlang:send/2 566 2.02 2590 [ 4.58]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 6636 2.06 2645 [ 0.40]
'Elixir.Access':get/2 14866 2.20 2827 [ 0.19]
'Elixir.Bunch':listify/1 15432 2.44 3130 [ 0.20]
'Elixir.Kernel':get_and_update_in/3 10956 2.73 3512 [ 0.32]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 4424 2.83 3632 [ 0.82]
'Elixir.Access':get_and_update/3 10390 3.11 3995 [ 0.38]
'Elixir.Kernel':get_in/2 14814 3.87 4976 [ 0.34]
'Elixir.Access':get/3 14866 3.92 5037 [ 0.34]
gen_server:loop/7 566 4.93 6331 [ 11.19]
'Elixir.ExLibSRTP.Native.Nif':unifex_unprotect/4 514 5.30 6812 [ 13.25]
'Elixir.Map':get_and_update/3 10390 7.36 9456 [ 0.91]
----------------------------------------------------------------------------------------- ------ ------- ------ [----------]
Total: 269666 100.00% 128414 [ 0.48]
****** Process <9928.4238.0> -- 0.40 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
lists:split/2 11 0.01 8 [ 0.73]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 52 0.01 15 [ 0.29]
'Elixir.Membrane.RTP.VAD':handle_demand/5 52 0.01 19 [ 0.37]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 52 0.02 29 [ 0.56]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 52 0.02 29 [ 0.56]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 52 0.02 30 [ 0.58]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 52 0.03 35 [ 0.67]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 52 0.03 38 [ 0.73]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 52 0.05 61 [ 1.17]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 52 0.06 81 [ 1.56]
lists:split/3 572 0.09 112 [ 0.20]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 514 0.11 138 [ 0.27]
'Elixir.Membrane.Buffer.Metric':from_unit/1 514 0.11 138 [ 0.27]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 514 0.11 142 [ 0.28]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_buffer/5-fun-0-'/2 514 0.11 145 [ 0.28]
lists:flatten/1 514 0.11 146 [ 0.28]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 514 0.11 148 [ 0.29]
erlang:max/2 618 0.12 152 [ 0.25]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 514 0.12 152 [ 0.30]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 514 0.12 154 [ 0.30]
'Elixir.Membrane.Core.Child.PadModel':'-update_multi/3-fun-0-'/2 514 0.12 156 [ 0.30]
'Elixir.Membrane.Core.InputBuffer':store/2 514 0.12 158 [ 0.31]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 514 0.12 160 [ 0.31]
'Elixir.Keyword':get/2 566 0.13 162 [ 0.29]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 566 0.13 162 [ 0.29]
'Elixir.Enum':reduce/3 514 0.13 163 [ 0.32]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 670 0.13 173 [ 0.26]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 566 0.13 173 [ 0.31]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 566 0.14 175 [ 0.31]
gen_server:try_dispatch/3 566 0.14 177 [ 0.31]
'Elixir.Membrane.Helper.GenServer':noreply/2 566 0.14 179 [ 0.32]
'Elixir.Bunch.Enum':try_reduce_while/3 514 0.14 181 [ 0.35]
maps:merge/2 514 0.14 183 [ 0.36]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 514 0.14 185 [ 0.36]
'Elixir.Membrane.Core.Child.PadModel':apply_updates/2 514 0.14 186 [ 0.36]
'Elixir.Access':key/2 566 0.14 187 [ 0.33]
'Elixir.List':flatten/1 514 0.15 190 [ 0.37]
'Elixir.Membrane.Core.Message':for_pad/1 566 0.15 195 [ 0.34]
gen_server:handle_common_reply/8 566 0.15 195 [ 0.34]
gen_server:decode_msg/9 566 0.15 197 [ 0.35]
lists:keyfind/3 566 0.16 210 [ 0.37]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 566 0.16 212 [ 0.37]
'Elixir.Membrane.RTP.VAD':'vad_maybe_silence?'/2 514 0.17 217 [ 0.42]
'Elixir.Membrane.RTP.VAD':filter_old_audio_levels/1 514 0.17 225 [ 0.44]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 566 0.18 229 [ 0.40]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 514 0.19 242 [ 0.47]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 1132 0.19 250 [ 0.22]
'Elixir.Membrane.Core.Child.PadModel':'update_multi!'/3 514 0.19 252 [ 0.49]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 1080 0.20 256 [ 0.24]
lists:reverse/1 1080 0.20 261 [ 0.24]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 1028 0.20 263 [ 0.26]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 1080 0.21 270 [ 0.25]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 1080 0.21 272 [ 0.25]
'Elixir.Bunch.Access':get_and_update_in/3 566 0.21 273 [ 0.48]
'Elixir.Bunch.Enum':try_each/2 514 0.21 273 [ 0.53]
'Elixir.Enum':drop_while/2 1080 0.21 276 [ 0.26]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 566 0.22 279 [ 0.49]
'Elixir.Ratio':compare/2 1028 0.22 285 [ 0.28]
'Elixir.Enum':split_while/2 1080 0.22 285 [ 0.26]
'Elixir.Ratio':sub/2 1028 0.22 288 [ 0.28]
'Elixir.Membrane.RTP.VAD':'vad_silence?'/2 1028 0.23 291 [ 0.28]
'Elixir.Membrane.RTP.VAD':'-handle_process_list/4-fun-0-'/2 514 0.24 307 [ 0.60]
queue:in/2 1028 0.24 309 [ 0.30]
'Elixir.Membrane.Core.Message':send/4 566 0.24 310 [ 0.55]
'Elixir.Keyword':get/3 566 0.24 314 [ 0.55]
'Elixir.Membrane.RTP.VAD':avg/1 514 0.25 322 [ 0.63]
'Elixir.Membrane.RTP.VAD':'vad_speech?'/2 1028 0.25 326 [ 0.32]
gen_server:handle_msg/6 566 0.26 335 [ 0.59]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 1080 0.26 336 [ 0.31]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 566 0.26 336 [ 0.59]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 566 0.28 356 [ 0.63]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 514 0.28 362 [ 0.70]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 514 0.28 368 [ 0.72]
'Elixir.Bunch.Enum':do_try_each/2 1028 0.29 370 [ 0.36]
'Elixir.Enum':to_list/1 1594 0.29 377 [ 0.24]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 566 0.30 384 [ 0.68]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 514 0.30 386 [ 0.75]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 1080 0.30 388 [ 0.36]
'Elixir.Membrane.RTP.VAD':handle_process_list/4 514 0.30 391 [ 0.76]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 514 0.31 399 [ 0.78]
'Elixir.Membrane.Core.InputBuffer':store/3 514 0.33 421 [ 0.82]
gen_server:try_dispatch/4 566 0.33 429 [ 0.76]
'Elixir.Membrane.Core.Child.PadModel':update_multi/3 514 0.33 430 [ 0.84]
'Elixir.Membrane.Core.Element':handle_info/2 566 0.33 432 [ 0.76]
queue:to_list/1 514 0.35 448 [ 0.87]
'Elixir.Map':update/4 514 0.35 456 [ 0.89]
'Elixir.Bunch.Struct':update_in/3 566 0.36 459 [ 0.81]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 1080 0.36 467 [ 0.43]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 1080 0.36 469 [ 0.43]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 514 0.37 480 [ 0.93]
'Elixir.Membrane.Pad.Data':get_and_update/3 2212 0.37 480 [ 0.22]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 514 0.38 485 [ 0.94]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 2212 0.38 489 [ 0.22]
'Elixir.Membrane.Core.Child.PadModel':'-apply_updates/2-fun-0-'/2 1028 0.38 490 [ 0.48]
'Elixir.Enum':map/2 1594 0.38 491 [ 0.31]
'Elixir.Enumerable.Qex':reduce/3 514 0.38 494 [ 0.96]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 1132 0.39 500 [ 0.44]
'Elixir.Membrane.RTP.VAD':add_new_audio_level/2 514 0.39 508 [ 0.99]
'Elixir.Bunch.Access':put_in/3 1132 0.39 510 [ 0.45]
'Elixir.Enum':split_while_list/3 1080 0.40 520 [ 0.48]
'Elixir.Bunch.Enum':chunk_by_prev/3 1080 0.40 522 [ 0.48]
'Elixir.Membrane.RTP.VAD':update_vad_state/2 514 0.40 523 [ 1.02]
'Elixir.Membrane.Core.InputBuffer':do_take/2 566 0.41 526 [ 0.93]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 514 0.42 540 [ 1.05]
'Elixir.Membrane.RTP.VAD':get_audio_levels_vad/1 514 0.42 545 [ 1.06]
'Elixir.Ratio':'gt?'/2 1028 0.42 546 [ 0.53]
'Elixir.Membrane.RTP.VAD':maybe_notify/2 514 0.43 561 [ 1.09]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 1080 0.44 570 [ 0.53]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 566 0.45 576 [ 1.02]
'Elixir.Access':'-key/2-fun-0-'/5 566 0.46 596 [ 1.05]
'Elixir.Kernel':put_in/3 1132 0.47 602 [ 0.53]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 1080 0.47 603 [ 0.56]
erlang:'++'/2 1594 0.47 607 [ 0.38]
'Elixir.Membrane.Pad.Data':fetch/2 1542 0.48 618 [ 0.40]
'Elixir.Membrane.Core.Element.State':get_and_update/3 2726 0.48 623 [ 0.23]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 514 0.48 626 [ 1.22]
lists:do_flatten/2 2056 0.49 632 [ 0.31]
queue:out/1 1594 0.49 635 [ 0.40]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 1080 0.50 641 [ 0.59]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 1542 0.50 642 [ 0.42]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 514 0.50 645 [ 1.25]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 566 0.50 650 [ 1.15]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 1080 0.52 667 [ 0.62]
'Elixir.Bunch.Access':update_in/3 1594 0.54 694 [ 0.44]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 1028 0.55 713 [ 0.69]
'Elixir.Qex':push/2 1028 0.55 714 [ 0.69]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 1698 0.55 715 [ 0.42]
'Elixir.Enum':drop_while_list/2 2160 0.57 742 [ 0.34]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 1080 0.59 758 [ 0.70]
'Elixir.Bunch.Enum':try_reduce/3 2160 0.59 758 [ 0.35]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 1594 0.59 758 [ 0.48]
'Elixir.Enum':reverse/1 3240 0.59 764 [ 0.24]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 1594 0.59 767 [ 0.48]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 514 0.63 810 [ 1.58]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 514 0.65 835 [ 1.62]
'Elixir.Enumerable':impl_for/1 3188 0.67 871 [ 0.27]
'Elixir.Kernel':update_in/3 1594 0.68 875 [ 0.55]
'Elixir.Qex':pop/1 1594 0.68 875 [ 0.55]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 566 0.69 886 [ 1.57]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 1132 0.75 972 [ 0.86]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 1080 0.88 1142 [ 1.06]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 566 0.98 1271 [ 2.25]
'Elixir.Enumerable':'impl_for!'/1 3188 1.02 1314 [ 0.41]
'Elixir.Enum':reduce_while/3 3188 1.06 1364 [ 0.43]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 3188 1.11 1440 [ 0.45]
'Elixir.Membrane.RTP.VAD':'-filter_old_audio_levels/1-fun-0-'/2 1028 1.12 1450 [ 1.41]
'Elixir.Membrane.RTP.VAD':handle_process/4 514 1.16 1495 [ 2.91]
maps:find/2 5966 1.17 1512 [ 0.25]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 7664 1.20 1549 [ 0.20]
'Elixir.Membrane.Core.Element.State':fetch/2 4424 1.35 1740 [ 0.39]
'Elixir.Bunch.Access':get_in/2 4424 1.35 1741 [ 0.39]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 7150 1.41 1827 [ 0.26]
'Elixir.Enumerable':reduce/3 3188 1.52 1964 [ 0.62]
lists:reverse/2 536 1.55 2009 [ 3.75]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 1080 1.61 2082 [ 1.93]
'Elixir.Enumerable.List':reduce/3 6324 1.72 2219 [ 0.35]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 6636 2.00 2580 [ 0.39]
'Elixir.Map':get/3 11470 2.06 2662 [ 0.23]
'Elixir.Access':get/2 14866 2.15 2782 [ 0.19]
'Elixir.Bunch':listify/1 15432 2.51 3243 [ 0.21]
erlang:send/2 566 2.52 3252 [ 5.75]
'Elixir.Kernel':get_and_update_in/3 10956 2.58 3328 [ 0.30]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 4424 2.72 3519 [ 0.80]
'Elixir.Access':get_and_update/3 10390 2.76 3563 [ 0.34]
'Elixir.Access':get/3 14866 3.57 4615 [ 0.31]
'Elixir.Kernel':get_in/2 14814 3.66 4732 [ 0.32]
gen_server:loop/7 566 3.89 5032 [ 8.89]
'Elixir.Map':get_and_update/3 10390 7.55 9755 [ 0.94]
----------------------------------------------------------------------------------------- ------ ------- ------ [----------]
Total: 285177 100.00% 129237 [ 0.45]
****** Process <9928.4246.0> -- 0.16 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.Core.Message':send/4 21 0.03 14 [ 0.67]
erlang:send/2 21 0.08 41 [ 1.95]
'Elixir.Enum':'-take_random/2-fun-0-'/2 206 0.12 64 [ 0.31]
'Elixir.Enum':to_list/1 206 0.12 66 [ 0.32]
gen_server:try_dispatch/3 206 0.13 67 [ 0.33]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 206 0.13 68 [ 0.33]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 206 0.13 69 [ 0.33]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 206 0.13 69 [ 0.33]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 206 0.13 71 [ 0.34]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 206 0.14 72 [ 0.35]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 206 0.14 74 [ 0.36]
lists:reverse/1 206 0.14 75 [ 0.36]
'Elixir.Enum':drop_while/2 206 0.14 75 [ 0.36]
'Elixir.Keyword':get/2 206 0.14 76 [ 0.37]
'Elixir.Enum':split_while/2 206 0.14 76 [ 0.37]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 206 0.15 78 [ 0.38]
queue:in/2 206 0.15 79 [ 0.38]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 206 0.15 79 [ 0.38]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 206 0.15 80 [ 0.39]
'Elixir.Membrane.Helper.GenServer':noreply/2 206 0.15 80 [ 0.39]
'Elixir.Membrane.Element.Fake.Sink.Buffers':handle_write_list/4 206 0.15 81 [ 0.39]
gen_server:handle_common_reply/8 206 0.15 82 [ 0.40]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 206 0.16 85 [ 0.41]
gen_server:decode_msg/9 206 0.16 85 [ 0.41]
maps:remove/2 206 0.17 88 [ 0.43]
erlang:'++'/2 206 0.17 88 [ 0.43]
maps:merge/2 206 0.17 89 [ 0.43]
'Elixir.Membrane.Core.Message':for_pad/1 206 0.17 91 [ 0.44]
'Elixir.Membrane.Core.InputBuffer':store/2 206 0.17 91 [ 0.44]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 206 0.18 97 [ 0.47]
'Elixir.Membrane.Core.Element.DemandHandler':'-supply_demand/2-fun-0-'/2 206 0.19 101 [ 0.49]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 206 0.19 101 [ 0.49]
'Elixir.MapSet':put/2 206 0.19 102 [ 0.50]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 206 0.19 103 [ 0.50]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 206 0.22 119 [ 0.58]
'Elixir.Enum':split_while_list/3 206 0.23 122 [ 0.59]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 206 0.23 123 [ 0.60]
maps:keys/1 206 0.23 124 [ 0.60]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 412 0.23 124 [ 0.30]
'Elixir.Bunch.Enum':chunk_by_prev/3 206 0.23 124 [ 0.60]
lists:keyfind/3 206 0.24 127 [ 0.62]
'Elixir.Enumerable.MapSet':reduce/3 206 0.25 131 [ 0.64]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 412 0.25 133 [ 0.32]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 412 0.25 135 [ 0.33]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 206 0.26 138 [ 0.67]
erlang:max/2 433 0.26 138 [ 0.32]
'Elixir.MapSet':to_list/1 206 0.26 140 [ 0.68]
'Elixir.Bunch.Access':get_and_update_in/3 206 0.27 144 [ 0.70]
gen_server:handle_msg/6 206 0.27 144 [ 0.70]
'Elixir.Enum':'-take_random/2-anonymous-4-'/3 206 0.27 146 [ 0.71]
'Elixir.MapSet':delete/2 206 0.28 151 [ 0.73]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 412 0.29 152 [ 0.37]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 206 0.29 152 [ 0.74]
gen_server:try_dispatch/4 206 0.29 153 [ 0.74]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 206 0.29 156 [ 0.76]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 412 0.30 159 [ 0.39]
'Elixir.Access':key/2 412 0.31 162 [ 0.39]
'Elixir.Enum':take_random/2 206 0.31 166 [ 0.81]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 206 0.31 167 [ 0.81]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 206 0.32 168 [ 0.82]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 206 0.32 169 [ 0.82]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 206 0.32 172 [ 0.83]
'Elixir.Membrane.Core.Element':handle_info/2 206 0.34 178 [ 0.86]
'Elixir.Enum':drop_while_list/2 412 0.34 183 [ 0.44]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-4-'/1 206 0.35 184 [ 0.89]
'Elixir.Membrane.Core.InputBuffer':store/3 206 0.35 185 [ 0.90]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 412 0.35 186 [ 0.45]
'Elixir.Map':'update!'/3 206 0.35 187 [ 0.91]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 206 0.35 188 [ 0.91]
'Elixir.Enum':map/2 412 0.36 190 [ 0.46]
'Elixir.Keyword':get/3 206 0.38 201 [ 0.98]
'Elixir.Qex':push/2 206 0.39 206 [ 1.00]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 824 0.41 220 [ 0.27]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 206 0.42 222 [ 1.08]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 824 0.42 222 [ 0.27]
queue:out/1 618 0.45 241 [ 0.39]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 412 0.46 244 [ 0.59]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 206 0.48 256 [ 1.24]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 206 0.49 261 [ 1.27]
'Elixir.Enum':reverse/1 1030 0.50 265 [ 0.26]
'Elixir.Enumerable':impl_for/1 1030 0.51 269 [ 0.26]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 206 0.53 280 [ 1.36]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 206 0.57 302 [ 1.47]
'Elixir.Membrane.Pad.Data':fetch/2 618 0.57 304 [ 0.49]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 412 0.58 309 [ 0.75]
'Elixir.Bunch.Access':update_in/3 618 0.59 314 [ 0.51]
'Elixir.Bunch.Enum':try_reduce/3 824 0.64 341 [ 0.41]
'Elixir.Bunch.Struct':update_in/3 412 0.65 344 [ 0.83]
'Elixir.Membrane.Pad.Data':get_and_update/3 1236 0.65 344 [ 0.28]
'Elixir.Membrane.Core.Element.State':get_and_update/3 1236 0.66 352 [ 0.28]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 618 0.68 360 [ 0.58]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 206 0.70 373 [ 1.81]
'Elixir.Enum':reduce_while/3 824 0.75 397 [ 0.48]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 824 0.76 401 [ 0.49]
'Elixir.Kernel':update_in/3 618 0.76 402 [ 0.65]
'Elixir.Bunch.Access':put_in/3 824 0.78 412 [ 0.50]
'Elixir.Membrane.Core.InputBuffer':do_take/2 412 0.79 417 [ 1.01]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 824 0.79 419 [ 0.51]
'Elixir.Access':'-key/2-fun-0-'/5 412 0.79 422 [ 1.02]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 824 0.80 426 [ 0.52]
'Elixir.Qex':pop/1 618 0.83 439 [ 0.71]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 206 0.83 442 [ 2.15]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 412 0.93 496 [ 1.20]
'Elixir.Kernel':put_in/3 824 0.96 509 [ 0.62]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 206 0.98 521 [ 2.53]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 412 1.04 550 [ 1.33]
'Elixir.Enumerable':'impl_for!'/1 1030 1.06 563 [ 0.55]
'Elixir.Enumerable.List':reduce/3 1648 1.11 587 [ 0.36]
'Elixir.Enumerable':reduce/3 1030 1.17 622 [ 0.60]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 412 1.27 675 [ 1.64]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 824 1.46 775 [ 0.94]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 3090 1.64 870 [ 0.28]
maps:find/2 2472 1.66 882 [ 0.36]
'Elixir.Bunch.Access':get_in/2 1854 1.66 883 [ 0.48]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 3708 1.69 900 [ 0.24]
'Elixir.Membrane.Core.Element.State':fetch/2 1854 1.82 967 [ 0.52]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 618 2.46 1305 [ 2.11]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 3090 2.63 1395 [ 0.45]
'Elixir.Map':get/3 5356 2.67 1419 [ 0.26]
'Elixir.Access':get/2 6180 2.78 1477 [ 0.24]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 1854 3.23 1714 [ 0.92]
'Elixir.Kernel':get_and_update_in/3 5356 3.44 1827 [ 0.34]
gen_server:loop/7 206 3.60 1909 [ 9.27]
'Elixir.Access':get_and_update/3 4944 4.01 2130 [ 0.43]
'Elixir.Kernel':get_in/2 6180 4.10 2176 [ 0.35]
'Elixir.Access':get/3 6180 4.31 2287 [ 0.37]
'Elixir.Bunch':listify/1 7004 4.66 2477 [ 0.35]
'Elixir.Map':get_and_update/3 4944 8.66 4600 [ 0.93]
----------------------------------------------------------------------------------------- ------ ------- ----- [----------]
Total: 106565 100.00% 53100 [ 0.50]
****** Process <9928.4247.0> -- 0.22 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 21 0.01 8 [ 0.38]
'Elixir.Membrane.Element.Tee.Master':handle_demand/5 21 0.01 8 [ 0.38]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 21 0.02 14 [ 0.67]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 21 0.02 14 [ 0.67]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 21 0.02 15 [ 0.71]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 21 0.02 17 [ 0.81]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 21 0.02 17 [ 0.81]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 21 0.04 26 [ 1.24]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 21 0.05 36 [ 1.71]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 206 0.08 56 [ 0.27]
'Elixir.Membrane.Buffer.Metric':from_unit/1 206 0.08 59 [ 0.29]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_buffer/5-fun-0-'/2 206 0.09 61 [ 0.30]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 206 0.09 67 [ 0.33]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 206 0.10 69 [ 0.33]
queue:in/2 206 0.10 70 [ 0.34]
'Elixir.Membrane.Core.InputBuffer':store/2 206 0.10 70 [ 0.34]
'Elixir.Membrane.Core.Child.PadModel':'-update_multi/3-fun-0-'/2 206 0.10 71 [ 0.34]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 227 0.10 72 [ 0.32]
'Elixir.Keyword':get/2 227 0.10 73 [ 0.32]
'Elixir.Enum':reduce/3 206 0.10 73 [ 0.35]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 206 0.10 74 [ 0.36]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 227 0.11 76 [ 0.33]
erlang:max/2 248 0.11 76 [ 0.31]
gen_server:try_dispatch/3 227 0.11 76 [ 0.33]
maps:merge/2 206 0.11 79 [ 0.38]
maps:iterator/1 206 0.11 79 [ 0.38]
gen_server:handle_common_reply/8 227 0.12 82 [ 0.36]
'Elixir.Access':key/2 227 0.12 83 [ 0.37]
'Elixir.Membrane.Core.Child.PadModel':apply_updates/2 206 0.12 85 [ 0.41]
'Elixir.Membrane.Core.Message':for_pad/1 227 0.12 87 [ 0.38]
'Elixir.Membrane.Helper.GenServer':noreply/2 227 0.13 89 [ 0.39]
'Elixir.Membrane.Element.Tee.Master':'-handle_process_list/4-fun-0-'/2 206 0.13 92 [ 0.45]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 269 0.13 93 [ 0.35]
gen_server:decode_msg/9 227 0.13 93 [ 0.41]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 206 0.13 94 [ 0.46]
'Elixir.Membrane.Element.Tee.Master':handle_process/4 206 0.13 94 [ 0.46]
lists:reverse/2 206 0.13 95 [ 0.46]
lists:keyfind/3 227 0.14 97 [ 0.43]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 206 0.15 106 [ 0.51]
'Elixir.Membrane.Core.Child.PadModel':'update_multi!'/3 206 0.16 110 [ 0.53]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 433 0.16 111 [ 0.26]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 433 0.16 114 [ 0.26]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 433 0.16 114 [ 0.26]
maps:keys/1 206 0.16 115 [ 0.56]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 227 0.16 116 [ 0.51]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 433 0.17 119 [ 0.27]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 227 0.17 121 [ 0.53]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 227 0.17 124 [ 0.55]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 454 0.18 125 [ 0.28]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 412 0.18 126 [ 0.31]
'Elixir.Enum':drop_while/2 433 0.18 126 [ 0.29]
'Elixir.Enum':map/2 433 0.18 128 [ 0.30]
'Elixir.Enum':split_while/2 433 0.18 130 [ 0.30]
'Elixir.Membrane.Element.Tee.Master':handle_process_list/4 206 0.18 131 [ 0.64]
'Elixir.Bunch.Access':get_and_update_in/3 227 0.19 132 [ 0.58]
queue:out/1 433 0.19 135 [ 0.31]
'Elixir.Keyword':get/3 227 0.19 137 [ 0.60]
'Elixir.Map':new/1 206 0.20 139 [ 0.67]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 433 0.20 140 [ 0.32]
erlang:'++'/2 433 0.20 144 [ 0.33]
gen_server:handle_msg/6 227 0.20 144 [ 0.63]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 206 0.21 149 [ 0.72]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 206 0.21 152 [ 0.74]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 206 0.21 152 [ 0.74]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 206 0.22 156 [ 0.76]
gen_server:try_dispatch/4 227 0.22 157 [ 0.69]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 433 0.23 162 [ 0.37]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 227 0.24 167 [ 0.74]
'Elixir.Qex':push/2 206 0.24 171 [ 0.83]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 206 0.24 172 [ 0.83]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 227 0.25 176 [ 0.78]
'Elixir.Membrane.Core.Child.PadModel':update_multi/3 206 0.25 180 [ 0.87]
'Elixir.Map':update/4 206 0.26 181 [ 0.88]
'Elixir.Membrane.Core.InputBuffer':store/3 206 0.26 185 [ 0.90]
'Elixir.Membrane.Core.Child.PadModel':'-apply_updates/2-fun-0-'/2 412 0.26 186 [ 0.45]
'Elixir.Membrane.Core.Element':handle_info/2 227 0.26 187 [ 0.82]
'Elixir.Bunch.Enum':try_reduce_while/3 206 0.27 190 [ 0.92]
'Elixir.Bunch.Struct':update_in/3 227 0.27 191 [ 0.84]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 206 0.28 197 [ 0.96]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 433 0.29 206 [ 0.48]
'Elixir.Enum':split_while_list/3 433 0.30 214 [ 0.49]
maps:fold/3 206 0.30 216 [ 1.05]
'Elixir.Bunch.Enum':chunk_by_prev/3 433 0.30 216 [ 0.50]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 433 0.31 220 [ 0.51]
'Elixir.Membrane.Core.Element.ActionHandler':'-do_handle_action/4-fun-1-'/5 824 0.31 220 [ 0.27]
maps:to_list_internal/1 1030 0.31 223 [ 0.22]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 824 0.32 225 [ 0.27]
'Elixir.Bunch.Access':put_in/3 454 0.32 225 [ 0.50]
'Elixir.Membrane.Core.InputBuffer':do_take/2 227 0.32 229 [ 1.01]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 454 0.33 231 [ 0.51]
'Elixir.Access':'-key/2-fun-0-'/5 227 0.34 240 [ 1.06]
'Elixir.Membrane.Pad.Data':get_and_update/3 887 0.34 240 [ 0.27]
'Elixir.Membrane.Core.Child.PadModel':'-filter_data/2-fun-0-'/2 1030 0.35 250 [ 0.24]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 206 0.36 252 [ 1.22]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 227 0.36 255 [ 1.12]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 433 0.36 257 [ 0.59]
'Elixir.Enum':filter/2 206 0.37 260 [ 1.26]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 412 0.37 261 [ 0.63]
'Elixir.Kernel':put_in/3 454 0.38 269 [ 0.59]
lists:reverse/1 639 0.38 271 [ 0.42]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 227 0.39 273 [ 1.20]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 618 0.39 279 [ 0.45]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 206 0.40 281 [ 1.36]
'Elixir.Enum':to_list/1 1257 0.40 282 [ 0.22]
'Elixir.Enum':'-filter/2-anonymous-1-'/4 1030 0.40 283 [ 0.27]
'Elixir.Qex':pop/1 433 0.40 285 [ 0.66]
'Elixir.Membrane.Core.Child.PadModel':filter_data/2 206 0.41 292 [ 1.42]
'Elixir.Membrane.Core.Child.PadModel':'constraints_met?'/2 1030 0.42 295 [ 0.29]
'Elixir.Enum':reverse/1 1299 0.42 297 [ 0.23]
maps:from_list/1 206 0.43 307 [ 1.49]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 433 0.44 309 [ 0.71]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 227 0.44 315 [ 1.39]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 433 0.46 324 [ 0.75]
'Elixir.Enum':drop_while_list/2 866 0.46 324 [ 0.37]
'Elixir.Bunch.Access':update_in/3 639 0.46 325 [ 0.51]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 681 0.47 330 [ 0.48]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 1505 0.48 337 [ 0.22]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 824 0.49 345 [ 0.42]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 639 0.50 354 [ 0.55]
'Elixir.Kernel':update_in/3 639 0.52 365 [ 0.57]
maps:next/1 1236 0.53 374 [ 0.30]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 206 0.53 379 [ 1.84]
'Elixir.Bunch.Enum':try_each/2 824 0.54 383 [ 0.46]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 227 0.56 394 [ 1.74]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 454 0.56 396 [ 0.87]
erts_internal:map_next/3 1236 0.56 397 [ 0.32]
'Elixir.Membrane.Core.Message':send/4 845 0.56 400 [ 0.47]
'Elixir.Bunch.Enum':try_reduce/3 1072 0.61 432 [ 0.40]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 866 0.61 434 [ 0.50]
'Elixir.Membrane.Core.Child.PadModel':'-constraints_met?/2-fun-0-'/2 1030 0.66 467 [ 0.45]
'Elixir.Enum':'-all?/2-fun-0-'/3 1030 0.66 469 [ 0.46]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 433 0.67 477 [ 1.10]
'Elixir.Enum':'all?'/2 1030 0.69 486 [ 0.47]
'Elixir.Enum':'-filter/2-fun-0-'/3 1030 0.71 500 [ 0.49]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 227 0.74 524 [ 2.31]
'Elixir.Enumerable':impl_for/1 2308 0.76 536 [ 0.23]
maps:to_list/1 1030 0.78 550 [ 0.53]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 227 0.78 555 [ 2.44]
'Elixir.Membrane.Core.Element.State':get_and_update/3 1093 0.83 591 [ 0.54]
'Elixir.Bunch.Enum':do_try_each/2 1648 0.85 603 [ 0.37]
'Elixir.Membrane.Pad.Data':fetch/2 1648 0.98 692 [ 0.42]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 3073 0.98 694 [ 0.23]
'Elixir.Enum':reduce_while/3 1278 1.01 715 [ 0.56]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 1257 1.02 726 [ 0.58]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 433 1.06 751 [ 1.73]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 1463 1.09 771 [ 0.53]
'Elixir.Enumerable.Map':reduce/3 1030 1.10 779 [ 0.76]
maps:fold_1/3 1236 1.11 788 [ 0.64]
'Elixir.Enumerable':'impl_for!'/1 2308 1.34 947 [ 0.41]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 3485 1.44 1020 [ 0.29]
'Elixir.Membrane.Core.Element.State':fetch/2 2392 1.52 1079 [ 0.45]
maps:find/2 4040 1.54 1088 [ 0.27]
'Elixir.Map':get/3 4599 1.69 1195 [ 0.26]
'Elixir.Bunch.Access':get_in/2 2392 1.89 1341 [ 0.56]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 1648 1.93 1368 [ 0.83]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 3279 2.00 1421 [ 0.43]
'Elixir.Kernel':get_and_update_in/3 4393 2.04 1448 [ 0.33]
'Elixir.Bunch':listify/1 7424 2.14 1515 [ 0.20]
'Elixir.Enumerable':reduce/3 2308 2.19 1552 [ 0.67]
'Elixir.Access':get_and_update/3 4166 2.47 1752 [ 0.42]
'Elixir.Access':get/2 8845 2.53 1790 [ 0.20]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 2392 2.67 1895 [ 0.79]
'Elixir.Enumerable.List':reduce/3 5007 2.71 1918 [ 0.38]
erlang:send/2 845 3.07 2175 [ 2.57]
'Elixir.Kernel':get_in/2 7794 3.58 2534 [ 0.33]
gen_server:loop/7 227 3.77 2675 [ 11.78]
'Elixir.Access':get/3 8845 4.56 3235 [ 0.37]
'Elixir.Map':get_and_update/3 4166 5.70 4042 [ 0.97]
----------------------------------------------------------------------------------------- ------ ------- ----- [----------]
Total: 152207 100.00% 70873 [ 0.47]
****** Process <9928.4248.0> -- 0.16 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 21 0.01 7 [ 0.33]
'Elixir.Membrane.WebRTC.TrackFilter':handle_demand/5 21 0.02 8 [ 0.38]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 21 0.03 13 [ 0.62]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 21 0.03 13 [ 0.62]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 21 0.03 14 [ 0.67]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 21 0.04 18 [ 0.86]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 21 0.04 21 [ 1.00]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 21 0.06 30 [ 1.43]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 21 0.07 36 [ 1.71]
'Elixir.Membrane.Buffer.Metric':from_unit/1 206 0.13 64 [ 0.31]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 206 0.13 64 [ 0.31]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 206 0.13 65 [ 0.32]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 206 0.13 66 [ 0.32]
queue:in/2 206 0.13 67 [ 0.33]
gen_server:try_dispatch/3 227 0.13 68 [ 0.30]
'Elixir.Membrane.WebRTC.TrackFilter':'-handle_process_list/4-fun-0-'/2 206 0.14 69 [ 0.33]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 206 0.14 70 [ 0.34]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 227 0.14 71 [ 0.31]
'Elixir.Enum':reduce/3 206 0.14 73 [ 0.35]
'Elixir.Membrane.Core.Child.PadModel':'-update_multi/3-fun-0-'/2 206 0.15 74 [ 0.36]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 227 0.15 75 [ 0.33]
'Elixir.Membrane.Core.InputBuffer':store/2 206 0.15 75 [ 0.36]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 206 0.15 76 [ 0.37]
'Elixir.Bunch.Enum':try_reduce_while/3 206 0.15 76 [ 0.37]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 206 0.16 79 [ 0.38]
'Elixir.Membrane.Helper.GenServer':noreply/2 227 0.16 80 [ 0.35]
erlang:max/2 248 0.16 80 [ 0.32]
gen_server:decode_msg/9 227 0.16 80 [ 0.35]
maps:merge/2 206 0.16 81 [ 0.39]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_buffer/5-fun-0-'/2 206 0.16 82 [ 0.40]
'Elixir.Keyword':get/2 227 0.16 83 [ 0.37]
'Elixir.Membrane.Core.Child.PadModel':apply_updates/2 206 0.16 84 [ 0.41]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 227 0.16 84 [ 0.37]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 269 0.17 85 [ 0.32]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 206 0.17 86 [ 0.42]
'Elixir.List':flatten/1 206 0.17 87 [ 0.42]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 206 0.18 90 [ 0.44]
lists:flatten/1 206 0.18 91 [ 0.44]
gen_server:handle_common_reply/8 227 0.18 91 [ 0.40]
'Elixir.Membrane.WebRTC.TrackFilter':handle_process/4 206 0.19 95 [ 0.46]
'Elixir.Access':key/2 227 0.19 96 [ 0.42]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 227 0.19 97 [ 0.43]
'Elixir.Membrane.Core.Message':for_pad/1 227 0.20 101 [ 0.44]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 227 0.21 105 [ 0.46]
'Elixir.Membrane.Core.Child.PadModel':'update_multi!'/3 206 0.22 112 [ 0.54]
lists:keyfind/3 227 0.22 113 [ 0.50]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 433 0.22 113 [ 0.26]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 433 0.23 115 [ 0.27]
'Elixir.Bunch.Enum':try_each/2 206 0.23 117 [ 0.57]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 454 0.23 119 [ 0.26]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 433 0.24 120 [ 0.28]
lists:reverse/1 433 0.24 121 [ 0.28]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 412 0.24 122 [ 0.30]
'Elixir.Enum':split_while/2 433 0.24 122 [ 0.28]
'Elixir.Bunch.Access':get_and_update_in/3 227 0.24 123 [ 0.54]
queue:out/1 433 0.24 124 [ 0.29]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 227 0.25 127 [ 0.56]
'Elixir.Keyword':get/3 227 0.27 136 [ 0.60]
'Elixir.Enum':drop_while/2 433 0.28 141 [ 0.33]
gen_server:handle_msg/6 227 0.28 141 [ 0.62]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 433 0.28 143 [ 0.33]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 206 0.29 146 [ 0.71]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 206 0.29 147 [ 0.71]
'Elixir.Membrane.Core.Message':send/4 227 0.29 150 [ 0.66]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 206 0.30 153 [ 0.74]
'Elixir.Membrane.WebRTC.TrackFilter':handle_process_list/4 206 0.31 156 [ 0.76]
'Elixir.Enum':to_list/1 639 0.31 158 [ 0.25]
erlang:'++'/2 433 0.31 160 [ 0.37]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 227 0.32 161 [ 0.71]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 227 0.33 166 [ 0.73]
'Elixir.Membrane.Core.InputBuffer':store/3 206 0.33 168 [ 0.82]
'Elixir.Qex':push/2 206 0.33 169 [ 0.82]
gen_server:try_dispatch/4 227 0.34 171 [ 0.75]
'Elixir.Bunch.Enum':do_try_each/2 412 0.35 177 [ 0.43]
'Elixir.Enum':map/2 639 0.35 180 [ 0.28]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 433 0.35 180 [ 0.42]
'Elixir.Membrane.Core.Element':handle_info/2 227 0.36 181 [ 0.80]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 206 0.36 183 [ 0.89]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 206 0.36 184 [ 0.89]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 227 0.37 191 [ 0.84]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 433 0.38 195 [ 0.45]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 206 0.40 205 [ 1.00]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 887 0.42 214 [ 0.24]
'Elixir.Bunch.Enum':chunk_by_prev/3 433 0.43 220 [ 0.51]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 454 0.44 226 [ 0.50]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 433 0.45 228 [ 0.53]
'Elixir.Access':'-key/2-fun-0-'/5 227 0.45 231 [ 1.02]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 433 0.47 237 [ 0.55]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 227 0.48 243 [ 1.07]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 433 0.48 246 [ 0.57]
'Elixir.Bunch.Access':put_in/3 454 0.48 247 [ 0.54]
'Elixir.Membrane.Core.Child.PadModel':'-apply_updates/2-fun-0-'/2 412 0.49 252 [ 0.61]
'Elixir.Kernel':put_in/3 454 0.51 258 [ 0.57]
'Elixir.Enumerable':impl_for/1 1072 0.51 262 [ 0.24]
'Elixir.Membrane.Core.InputBuffer':do_take/2 227 0.51 262 [ 1.15]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 618 0.51 262 [ 0.42]
'Elixir.Qex':pop/1 433 0.52 266 [ 0.61]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 206 0.53 268 [ 1.30]
'Elixir.Membrane.Core.Child.PadModel':update_multi/3 206 0.53 269 [ 1.31]
'Elixir.Membrane.Pad.Data':fetch/2 618 0.53 269 [ 0.44]
lists:do_flatten/2 824 0.53 270 [ 0.33]
'Elixir.Map':update/4 206 0.54 274 [ 1.33]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 433 0.55 278 [ 0.64]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 227 0.55 280 [ 1.23]
'Elixir.Membrane.Pad.Data':get_and_update/3 887 0.56 287 [ 0.32]
'Elixir.Enum':split_while_list/3 433 0.57 291 [ 0.67]
'Elixir.Enum':reverse/1 1299 0.58 294 [ 0.23]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 433 0.58 294 [ 0.68]
'Elixir.Membrane.Core.Element.State':get_and_update/3 1093 0.59 299 [ 0.27]
'Elixir.Bunch.Access':update_in/3 639 0.59 302 [ 0.47]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 681 0.61 311 [ 0.46]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 433 0.62 318 [ 0.73]
'Elixir.Bunch.Enum':try_reduce/3 866 0.62 318 [ 0.37]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 412 0.66 334 [ 0.81]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 206 0.66 335 [ 1.63]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 639 0.68 345 [ 0.54]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 206 0.69 349 [ 1.69]
'Elixir.Kernel':update_in/3 639 0.69 353 [ 0.55]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 206 0.70 358 [ 1.74]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 206 0.72 365 [ 1.77]
'Elixir.Enum':drop_while_list/2 866 0.73 374 [ 0.43]
'Elixir.Bunch.Struct':update_in/3 227 0.76 385 [ 1.70]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 227 0.76 388 [ 1.71]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 639 0.77 392 [ 0.61]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 454 0.78 395 [ 0.87]
'Elixir.Enumerable':'impl_for!'/1 1072 0.94 477 [ 0.44]
'Elixir.Enum':reduce_while/3 1072 0.99 502 [ 0.47]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 227 1.05 535 [ 2.36]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 433 1.09 555 [ 1.28]
'Elixir.Enumerable':reduce/3 1072 1.13 574 [ 0.54]
maps:find/2 2392 1.23 625 [ 0.26]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 1278 1.27 648 [ 0.51]
'Elixir.Enumerable.List':reduce/3 1917 1.30 662 [ 0.35]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 3073 1.31 665 [ 0.22]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 433 1.35 689 [ 1.59]
'Elixir.Bunch.Access':get_in/2 1774 1.49 758 [ 0.43]
erlang:send/2 227 1.55 789 [ 3.48]
'Elixir.Membrane.Core.Element.State':fetch/2 1774 1.73 883 [ 0.50]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 2867 2.03 1034 [ 0.36]
'Elixir.Map':get/3 4599 2.26 1151 [ 0.25]
'Elixir.Access':get/2 5961 2.32 1181 [ 0.20]
'Elixir.Bunch':listify/1 6188 2.58 1316 [ 0.21]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 2661 2.60 1323 [ 0.50]
'Elixir.Kernel':get_and_update_in/3 4393 2.84 1445 [ 0.33]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 1774 2.97 1515 [ 0.85]
'Elixir.Access':get_and_update/3 4166 3.05 1552 [ 0.37]
gen_server:loop/7 227 3.43 1746 [ 7.69]
'Elixir.Kernel':get_in/2 5940 3.89 1983 [ 0.33]
'Elixir.Access':get/3 5961 4.33 2205 [ 0.37]
'Elixir.Map':get_and_update/3 4166 9.45 4816 [ 1.16]
----------------------------------------------------------------------------------------- ------ ------- ----- [----------]
Total: 107093 100.00% 50938 [ 0.48]
****** Process <9928.4249.0> -- 0.05 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.Helper.GenServer':noreply/1 690 1.06 175 [ 0.25]
gen_server:handle_common_reply/8 690 1.22 202 [ 0.29]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 690 1.24 206 [ 0.30]
'Elixir.Membrane.Pad':get_corresponding_bin_name/1 690 1.25 207 [ 0.30]
lists:member/2 690 1.28 212 [ 0.31]
lists:keymember/3 690 1.33 221 [ 0.32]
gen_server:try_dispatch/3 690 1.34 223 [ 0.32]
'Elixir.Membrane.Pad':get_corresponding_bin_pad/1 690 1.38 228 [ 0.33]
erlang:setelement/3 690 1.39 231 [ 0.33]
gen_server:decode_msg/9 690 1.53 254 [ 0.37]
maps:find/2 690 1.79 297 [ 0.43]
'Elixir.Membrane.Core.Bin.LinkingBuffer':'currently_linking?'/2 690 1.85 306 [ 0.44]
'Elixir.Keyword':delete_key/2 1380 1.98 329 [ 0.24]
'Elixir.Bunch':listify/1 1380 2.12 351 [ 0.25]
'Elixir.Bunch.Access':get_in/2 690 2.17 359 [ 0.52]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 690 2.21 367 [ 0.53]
'Elixir.Membrane.Core.Bin.State':fetch/2 690 2.26 374 [ 0.54]
'Elixir.Enum':'member?'/2 690 2.27 376 [ 0.54]
gen_server:handle_msg/6 690 2.30 381 [ 0.55]
'Elixir.Access':get/2 2070 2.67 443 [ 0.21]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 690 3.07 509 [ 0.74]
'Elixir.Keyword':put/3 690 3.24 538 [ 0.78]
'Elixir.Membrane.Core.Message':set_for_pad/2 690 3.52 583 [ 0.84]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 690 4.14 687 [ 1.00]
gen_server:try_dispatch/4 690 4.33 718 [ 1.04]
'Elixir.Kernel':get_in/2 2070 4.78 793 [ 0.38]
'Elixir.Membrane.Core.Bin':handle_info/2 690 5.58 925 [ 1.34]
'Elixir.Access':get/3 2070 5.61 930 [ 0.45]
'Elixir.Membrane.Core.Bin.LinkingBuffer':store_or_send/3 690 7.15 1185 [ 1.72]
gen_server:loop/7 690 8.98 1489 [ 2.16]
erlang:send/2 690 14.97 2482 [ 3.60]
--------------------------------------------------------------- ----- ------- ----- [----------]
Total: 26910 100.00% 16581 [ 0.62]
****** Process <9928.4251.0> -- 0.45 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
lists:reverse/2 6 0.00 3 [ 0.50]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-2-'/2 206 0.05 75 [ 0.36]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 206 0.06 93 [ 0.45]
lists:flatten/1 206 0.07 96 [ 0.47]
'Elixir.Membrane.Buffer.Metric':from_unit/1 206 0.07 96 [ 0.47]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 206 0.07 97 [ 0.47]
'Elixir.List':flatten/1 206 0.07 97 [ 0.47]
'Elixir.Membrane.Core.Child.PadModel':'-update_multi/3-fun-0-'/2 206 0.07 100 [ 0.49]
'Elixir.Enum':reduce/3 206 0.08 111 [ 0.54]
'Elixir.Enum':entry_to_string/1 370 0.08 114 [ 0.31]
gen_server:try_dispatch/3 390 0.08 114 [ 0.29]
'Elixir.Membrane.RTP.VP8.Depayloader':'-handle_process_list/4-fun-0-'/2 369 0.08 115 [ 0.31]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_buffer/5-fun-0-'/2 206 0.08 116 [ 0.56]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-0-'/1 369 0.09 129 [ 0.35]
'Elixir.Enum':'-take_random/2-fun-0-'/2 369 0.09 129 [ 0.35]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 369 0.09 130 [ 0.35]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 369 0.09 131 [ 0.36]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 369 0.09 132 [ 0.36]
'Elixir.Enum':join/1 206 0.09 136 [ 0.66]
'Elixir.Membrane.RTP.VP8.PayloadDescriptor':get_temporal_level_zero_index/2 369 0.10 141 [ 0.38]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 390 0.10 144 [ 0.37]
gen_server:handle_common_reply/8 390 0.10 146 [ 0.37]
'Elixir.Membrane.RTP.VP8.PayloadDescriptor':get_tidykeyidx/2 369 0.10 147 [ 0.40]
gen_server:decode_msg/9 390 0.10 152 [ 0.39]
'Elixir.Enum':'-fun.entry_to_string/1-'/1 370 0.11 154 [ 0.42]
maps:remove/2 369 0.11 156 [ 0.42]
'Elixir.Bunch.Enum':try_each/2 206 0.11 157 [ 0.76]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 369 0.11 162 [ 0.44]
'Elixir.Membrane.RTP.VP8.Depayloader':handle_demand/5 390 0.11 162 [ 0.42]
'Elixir.Membrane.Core.InputBuffer':store/2 369 0.11 163 [ 0.44]
'Elixir.Keyword':get/2 390 0.11 165 [ 0.42]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 369 0.11 165 [ 0.45]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 369 0.11 166 [ 0.45]
maps:merge/2 369 0.11 167 [ 0.45]
'Elixir.Bunch.Enum':try_reduce_while/3 369 0.11 167 [ 0.45]
queue:in/2 369 0.12 169 [ 0.46]
'Elixir.Membrane.Core.Message':for_pad/1 390 0.12 170 [ 0.44]
'Elixir.Membrane.Core.Child.PadModel':apply_updates/2 206 0.12 173 [ 0.84]
'Elixir.Membrane.Helper.GenServer':noreply/2 390 0.12 179 [ 0.46]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_redemand/2-fun-0-'/2 369 0.12 182 [ 0.49]
'Elixir.Membrane.Core.Message':send/4 243 0.13 190 [ 0.78]
'Elixir.Membrane.Core.Child.PadModel':'update_multi!'/3 206 0.13 191 [ 0.93]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 575 0.15 212 [ 0.37]
'Elixir.Enumerable.MapSet':reduce/3 369 0.15 217 [ 0.59]
lists:keyfind/3 390 0.15 218 [ 0.56]
'Elixir.Enum':'-take_random/2-anonymous-4-'/3 369 0.16 226 [ 0.61]
maps:keys/1 369 0.17 246 [ 0.67]
'Elixir.MapSet':to_list/1 369 0.17 248 [ 0.67]
erlang:max/2 796 0.17 248 [ 0.31]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 759 0.17 253 [ 0.33]
'Elixir.Membrane.RTP.VP8.Depayloader':handle_process_list/4 369 0.17 255 [ 0.69]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 390 0.18 256 [ 0.66]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 759 0.18 256 [ 0.34]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 206 0.18 269 [ 1.31]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 390 0.19 270 [ 0.69]
'Elixir.Membrane.RTP.VP8.Frame':flush/1 206 0.19 271 [ 1.32]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 390 0.19 272 [ 0.70]
'Elixir.MapSet':put/2 369 0.19 275 [ 0.75]
'Elixir.Bunch.Enum':do_try_each/2 412 0.19 276 [ 0.67]
gen_server:handle_msg/6 390 0.19 276 [ 0.71]
'Elixir.Keyword':get/3 390 0.19 277 [ 0.71]
'Elixir.Enum':join/2 206 0.19 282 [ 1.37]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 390 0.20 285 [ 0.73]
'Elixir.MapSet':delete/2 369 0.20 285 [ 0.77]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 759 0.20 286 [ 0.38]
'Elixir.Membrane.Core.Element.ActionHandler':handle_redemand/2 369 0.20 289 [ 0.78]
lists:reverse/1 1128 0.21 300 [ 0.27]
'Elixir.Membrane.Core.Child.PadModel':update_multi/3 206 0.21 302 [ 1.47]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 369 0.21 303 [ 0.82]
'Elixir.Enum':drop_while/2 1128 0.21 308 [ 0.27]
'Elixir.Enum':take_random/2 369 0.21 308 [ 0.83]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 1128 0.21 310 [ 0.27]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 759 0.21 313 [ 0.41]
'Elixir.Access':key/2 759 0.22 316 [ 0.42]
'Elixir.Qex':push/2 369 0.22 317 [ 0.86]
'Elixir.Enum':split_while/2 1128 0.22 318 [ 0.28]
gen_server:try_dispatch/4 390 0.22 318 [ 0.82]
'Elixir.Membrane.Core.Child.PadModel':'-apply_updates/2-fun-0-'/2 412 0.22 324 [ 0.79]
'Elixir.Map':update/4 206 0.22 324 [ 1.57]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 1334 0.22 326 [ 0.24]
'Elixir.Membrane.Core.InputBuffer':store/3 369 0.22 326 [ 0.88]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 1334 0.23 328 [ 0.25]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 369 0.23 328 [ 0.89]
'Elixir.Map':'update!'/3 369 0.23 332 [ 0.90]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 369 0.24 348 [ 0.94]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 369 0.24 348 [ 0.94]
'Elixir.Enum':to_list/1 1334 0.24 349 [ 0.26]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 369 0.24 352 [ 0.95]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 390 0.24 353 [ 0.91]
lists:do_flatten/2 824 0.26 378 [ 0.46]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 759 0.27 390 [ 0.51]
'Elixir.Membrane.RTP.VP8.PayloadDescriptor':get_picture_id/2 369 0.27 390 [ 1.06]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 759 0.27 395 [ 0.52]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 369 0.27 395 [ 1.07]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 390 0.27 397 [ 1.02]
'Elixir.Bunch.Access':get_and_update_in/3 759 0.28 405 [ 0.53]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 1128 0.28 406 [ 0.36]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 618 0.28 409 [ 0.66]
queue:out/1 1128 0.28 411 [ 0.36]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 206 0.29 424 [ 2.06]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 390 0.29 426 [ 1.09]
'Elixir.Membrane.RTP.VP8.Frame':do_parse/5 369 0.30 441 [ 1.20]
'Elixir.Membrane.RTP.VP8.Depayloader':handle_process/4 369 0.30 442 [ 1.20]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 1128 0.31 447 [ 0.40]
'Elixir.Membrane.RTP.VP8.PayloadDescriptor':get_extended_control_bits/2 369 0.32 467 [ 1.27]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 1539 0.32 469 [ 0.30]
'Elixir.Enum':map/2 1540 0.33 474 [ 0.31]
erlang:'++'/2 1497 0.33 476 [ 0.32]
'Elixir.Membrane.RTP.VP8.Frame':parse/2 369 0.33 479 [ 1.30]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 1334 0.33 481 [ 0.36]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 1518 0.34 495 [ 0.33]
'Elixir.Membrane.RTP.VP8.Depayloader':parse_buffer/2 369 0.35 509 [ 1.38]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 759 0.35 513 [ 0.68]
'Elixir.Membrane.Pad.Data':fetch/2 1107 0.35 513 [ 0.46]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 369 0.36 525 [ 1.42]
'Elixir.Membrane.Core.Element':handle_info/2 390 0.37 538 [ 1.38]
'Elixir.Membrane.Core.Element.DemandHandler':handle_redemand/2 738 0.37 538 [ 0.73]
'Elixir.Bunch.Enum':chunk_by_prev/3 1128 0.38 550 [ 0.49]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 1128 0.38 555 [ 0.49]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 369 0.39 568 [ 1.54]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 759 0.40 584 [ 0.77]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 738 0.41 598 [ 0.81]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 1334 0.44 637 [ 0.48]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 2483 0.45 653 [ 0.26]
erlang:iolist_to_binary/1 206 0.47 683 [ 3.32]
'Elixir.Bunch.Struct':update_in/3 759 0.47 689 [ 0.91]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 369 0.48 696 [ 1.89]
'Elixir.Enumerable':impl_for/1 2994 0.49 717 [ 0.24]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 390 0.49 721 [ 1.85]
'Elixir.Bunch.Access':update_in/3 1334 0.52 752 [ 0.56]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 1128 0.54 787 [ 0.70]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 1334 0.55 805 [ 0.60]
'Elixir.Enum':split_while_list/3 1497 0.55 805 [ 0.54]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 1334 0.55 808 [ 0.61]
'Elixir.Qex':pop/1 1128 0.55 808 [ 0.72]
'Elixir.Membrane.Core.InputBuffer':do_take/2 759 0.56 809 [ 1.07]
'Elixir.Bunch.Access':put_in/3 1518 0.56 823 [ 0.54]
'Elixir.Membrane.Pad.Data':get_and_update/3 2646 0.57 831 [ 0.31]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 1518 0.58 852 [ 0.56]
'Elixir.Kernel':update_in/3 1334 0.59 866 [ 0.65]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 1703 0.60 874 [ 0.51]
erlang:send/2 243 0.60 881 [ 3.63]
'Elixir.Enum':drop_while_list/2 2093 0.61 891 [ 0.43]
'Elixir.Bunch.Enum':try_reduce/3 2256 0.63 919 [ 0.41]
'Elixir.Enum':reverse/1 3796 0.64 936 [ 0.25]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 390 0.65 943 [ 2.42]
'Elixir.Membrane.Core.Element.State':get_and_update/3 2852 0.66 959 [ 0.34]
'Elixir.Access':'-key/2-fun-0-'/5 759 0.66 966 [ 1.27]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 1128 0.70 1013 [ 0.90]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 759 0.71 1028 [ 1.35]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 1334 0.72 1055 [ 0.79]
'Elixir.Kernel':put_in/3 1518 0.73 1064 [ 0.70]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 2277 0.78 1139 [ 0.50]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 1128 0.84 1218 [ 1.08]
'Elixir.Enum':reduce_while/3 2625 0.84 1227 [ 0.47]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 1128 0.92 1339 [ 1.19]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 759 0.93 1351 [ 1.78]
'Elixir.Membrane.RTP.VP8.PayloadDescriptor':parse_payload_descriptor/1 369 0.94 1375 [ 3.73]
'Elixir.Enumerable':'impl_for!'/1 2994 0.94 1376 [ 0.46]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 1518 0.99 1444 [ 0.95]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 3244 1.15 1682 [ 0.52]
maps:find/2 6236 1.21 1758 [ 0.28]
'Elixir.Enumerable':reduce/3 2994 1.21 1760 [ 0.59]
'Elixir.Enumerable.List':reduce/3 5435 1.33 1943 [ 0.36]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 1128 1.35 1966 [ 1.74]
'Elixir.Bunch.Access':get_in/2 5129 1.49 2175 [ 0.42]
'Elixir.Membrane.Core.Element.State':fetch/2 5129 1.55 2255 [ 0.44]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 7981 1.64 2384 [ 0.30]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 8350 1.65 2407 [ 0.29]
'Elixir.Access':get/2 16884 2.31 3360 [ 0.20]
'Elixir.Map':get/3 12330 2.37 3448 [ 0.28]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 7775 2.47 3607 [ 0.46]
'Elixir.Bunch':listify/1 17643 2.70 3941 [ 0.22]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 5129 3.03 4416 [ 0.86]
gen_server:loop/7 390 3.04 4430 [ 11.36]
'Elixir.Kernel':get_and_update_in/3 11961 3.41 4970 [ 0.42]
'Elixir.Access':get_and_update/3 11202 3.54 5161 [ 0.46]
'Elixir.Kernel':get_in/2 16494 3.70 5388 [ 0.33]
'Elixir.Access':get/3 16884 3.92 5713 [ 0.34]
'Elixir.Map':get_and_update/3 11202 8.42 12268 [ 1.10]
----------------------------------------------------------------------------------------- ------ ------- ------ [----------]
Total: 293176 100.00% 145741 [ 0.50]
****** Process <9928.4252.0> -- 0.58 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Heap':meld/3 369 0.05 103 [ 0.28]
'Elixir.Membrane.Time':second/0 369 0.05 103 [ 0.28]
'Elixir.Membrane.RTP.JitterBuffer':'-record_to_action/2-fun-0-'/1 369 0.05 104 [ 0.28]
'Elixir.Enum':'-take_random/2-fun-0-'/2 369 0.06 112 [ 0.30]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 369 0.06 113 [ 0.31]
'Elixir.Membrane.RTP.JitterBuffer':'-handle_process_list/4-fun-0-'/2 369 0.06 114 [ 0.31]
gen_server:try_dispatch/3 406 0.06 114 [ 0.28]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':shift_ordered/1 369 0.06 115 [ 0.31]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 369 0.06 118 [ 0.32]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-0-'/1 369 0.06 119 [ 0.32]
'Elixir.Membrane.Buffer.Metric':from_unit/1 369 0.06 119 [ 0.32]
'Elixir.Heap':pair/2 369 0.06 120 [ 0.33]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-2-'/2 369 0.06 121 [ 0.33]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 369 0.06 122 [ 0.33]
'Elixir.Membrane.Core.InputBuffer':store/2 369 0.06 123 [ 0.33]
queue:in/2 369 0.07 125 [ 0.34]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 369 0.07 126 [ 0.34]
lists:flatten/1 369 0.07 129 [ 0.35]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 369 0.07 131 [ 0.36]
'Elixir.Membrane.RTP.JitterBuffer':handle_demand/5 406 0.07 132 [ 0.33]
'Elixir.Kernel':'-get_and_update_in/3-fun-0-'/3 369 0.07 134 [ 0.36]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':'is_fresh_packet?'/2 369 0.07 136 [ 0.37]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_buffer/5-fun-0-'/2 369 0.07 138 [ 0.37]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_redemand/2-fun-0-'/2 369 0.07 138 [ 0.37]
'Elixir.Ratio':'/'/2 369 0.07 139 [ 0.38]
'Elixir.Ratio':'div'/2 369 0.07 139 [ 0.38]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 369 0.07 139 [ 0.38]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':'-shift_older_than/2-fun-0-'/3 369 0.07 141 [ 0.38]
'Elixir.Keyword':get/2 406 0.08 143 [ 0.35]
'Elixir.Bunch.Enum':try_reduce_while/3 369 0.08 143 [ 0.39]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 369 0.08 146 [ 0.40]
'Elixir.Membrane.RTP.JitterBuffer':'-fun.record_to_action/2-'/2 369 0.08 149 [ 0.40]
'Elixir.Enum':reduce/3 369 0.08 150 [ 0.41]
'Elixir.Enum':map_reduce/3 369 0.08 157 [ 0.43]
'Elixir.Membrane.Helper.GenServer':noreply/2 406 0.08 159 [ 0.39]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':update_end_index/2 369 0.08 160 [ 0.43]
gen_server:handle_common_reply/8 406 0.08 160 [ 0.39]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 406 0.08 161 [ 0.40]
'Elixir.List':flatten/1 369 0.08 161 [ 0.44]
'Elixir.Membrane.Core.Child.PadModel':'-update_multi/3-fun-0-'/2 369 0.09 164 [ 0.44]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':'-shift_ordered/1-fun-0-'/2 369 0.09 165 [ 0.45]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 369 0.09 174 [ 0.47]
'Elixir.Membrane.Core.Message':for_pad/1 406 0.09 174 [ 0.43]
'Elixir.MapSet':'member?'/2 369 0.09 178 [ 0.48]
gen_server:decode_msg/9 406 0.09 178 [ 0.44]
'Elixir.Ratio':trunc/1 369 0.10 181 [ 0.49]
'Elixir.Membrane.Core.Child.PadModel':apply_updates/2 369 0.10 184 [ 0.50]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':shift_while/2 738 0.10 186 [ 0.25]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':bump_prev_index/1 369 0.10 191 [ 0.52]
'Elixir.Ratio':mult/2 369 0.10 199 [ 0.54]
'Elixir.Bunch.Enum':try_each/2 369 0.12 219 [ 0.59]
maps:merge/2 369 0.12 223 [ 0.60]
'Elixir.Membrane.Time':as_seconds/1 369 0.12 223 [ 0.60]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 738 0.12 224 [ 0.30]
'Elixir.Membrane.RTP.JitterBuffer.State':get_and_update/3 738 0.12 227 [ 0.31]
'Elixir.Enumerable.MapSet':reduce/3 369 0.12 227 [ 0.62]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':first_record_timestamp/1 369 0.12 230 [ 0.62]
maps:keys/1 369 0.12 231 [ 0.63]
'Elixir.Membrane.Core.Child.PadModel':'update_multi!'/3 369 0.12 231 [ 0.63]
'Elixir.Enum':min_sort_fun/1 738 0.12 231 [ 0.31]
'Elixir.Bunch.Struct':'-put_in/3-anonymous-0-'/1 738 0.12 235 [ 0.32]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 406 0.13 242 [ 0.60]
lists:keyfind/3 406 0.13 243 [ 0.60]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 406 0.13 253 [ 0.62]
'Elixir.Membrane.Core.Message':send/4 406 0.13 255 [ 0.63]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 775 0.13 256 [ 0.33]
erlang:max/2 812 0.13 256 [ 0.32]
'Elixir.Enum':'-take_random/2-anonymous-4-'/3 369 0.14 261 [ 0.71]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 775 0.14 262 [ 0.34]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':shift_older_than/2 369 0.14 262 [ 0.71]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 775 0.14 267 [ 0.34]
erlang:system_time/0 369 0.14 268 [ 0.73]
'Elixir.Keyword':get/3 406 0.14 270 [ 0.67]
gen_server:handle_msg/6 406 0.14 272 [ 0.67]
'Elixir.MapSet':to_list/1 369 0.14 273 [ 0.74]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 369 0.14 273 [ 0.74]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 369 0.14 275 [ 0.75]
'Elixir.Ratio':remove_denominator_if_integer/1 1107 0.15 279 [ 0.25]
gen_server:try_dispatch/4 406 0.15 282 [ 0.69]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 406 0.15 284 [ 0.70]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 406 0.15 284 [ 0.70]
'Elixir.Qex':push/2 369 0.15 285 [ 0.77]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 369 0.15 288 [ 0.78]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':'-from_which_cycle/2-fun-0-'/1 1107 0.15 289 [ 0.26]
'Elixir.Membrane.RTP.JitterBuffer':handle_process_list/4 369 0.15 291 [ 0.79]
'Elixir.Membrane.Core.InputBuffer':store/3 369 0.15 293 [ 0.79]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 369 0.15 295 [ 0.80]
'Elixir.Ratio':abs/1 1107 0.16 297 [ 0.27]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':insert_buffer/2 369 0.16 301 [ 0.82]
'Elixir.Membrane.Core.Element.ActionHandler':handle_redemand/2 369 0.16 302 [ 0.82]
'Elixir.Membrane.RTP.JitterBuffer':'-record_to_action/2-fun-1-'/1 1107 0.16 307 [ 0.28]
'Elixir.Heap':pop/1 369 0.16 311 [ 0.84]
'Elixir.Ratio':'=='/2 1107 0.16 313 [ 0.28]
'Elixir.Membrane.RTP.JitterBuffer':set_timer/1 369 0.16 313 [ 0.85]
'Elixir.Ratio':'<'/2 1107 0.17 315 [ 0.28]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 1144 0.17 315 [ 0.28]
'Elixir.Enum':take_random/2 369 0.17 316 [ 0.86]
'Elixir.Membrane.RTP.JitterBuffer.Record':new/2 369 0.17 321 [ 0.87]
'Elixir.Map':'update!'/3 369 0.17 322 [ 0.87]
'Elixir.Bunch.Enum':do_try_each/2 738 0.17 324 [ 0.44]
maps:remove/2 738 0.18 336 [ 0.46]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 369 0.18 337 [ 0.91]
lists:reverse/1 1144 0.18 345 [ 0.30]
'Elixir.Bunch.Struct':put_in/3 369 0.18 345 [ 0.93]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 775 0.18 348 [ 0.45]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 369 0.18 349 [ 0.95]
erlang:monotonic_time/0 738 0.18 349 [ 0.47]
'Elixir.Heap':push/2 369 0.18 351 [ 0.95]
'Elixir.MapSet':put/2 738 0.18 351 [ 0.48]
erts_internal:time_unit/0 1107 0.19 359 [ 0.32]
'Elixir.Membrane.Core.Element':handle_info/2 406 0.19 364 [ 0.90]
'Elixir.Enum':min_by/2 738 0.19 367 [ 0.50]
queue:out/1 1144 0.20 372 [ 0.33]
'Elixir.Enum':split_while/2 1144 0.20 372 [ 0.33]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 406 0.20 375 [ 0.92]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 775 0.20 385 [ 0.50]
'Elixir.Membrane.Core.Child.PadModel':update_multi/3 369 0.20 389 [ 1.05]
'Elixir.Enum':drop_while/2 1144 0.21 401 [ 0.35]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 1513 0.22 411 [ 0.27]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 406 0.22 417 [ 1.03]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':from_which_cycle/2 369 0.22 424 [ 1.15]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 369 0.22 426 [ 1.15]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 1513 0.22 427 [ 0.28]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 1144 0.23 433 [ 0.38]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 775 0.23 435 [ 0.56]
'Elixir.Enum':to_list/1 1513 0.23 439 [ 0.29]
'Elixir.Enum':'-map_reduce/3-lists^mapfoldl/2-0-'/3 738 0.23 444 [ 0.60]
'Elixir.Enum':'-aggregate_by/4-fun-0-'/2 738 0.23 446 [ 0.60]
'Elixir.Heap':root/1 1845 0.23 447 [ 0.24]
'Elixir.Enum':min_by/4 738 0.24 451 [ 0.61]
'Elixir.Ratio':'eq?'/2 1107 0.24 452 [ 0.41]
'Elixir.Membrane.Core.Element.DemandHandler':handle_redemand/2 738 0.24 455 [ 0.62]
'Elixir.Bunch.Access':get_and_update_in/3 775 0.24 456 [ 0.59]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 406 0.24 458 [ 1.13]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 1587 0.24 461 [ 0.29]
'Elixir.Membrane.Core.Child.PadModel':'-apply_updates/2-fun-0-'/2 738 0.24 466 [ 0.63]
'Elixir.Ratio':compare/2 2214 0.26 494 [ 0.22]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 775 0.26 500 [ 0.65]
'Elixir.System':normalize_time_unit/1 2214 0.26 503 [ 0.23]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 369 0.27 505 [ 1.37]
'Elixir.Map':update/4 369 0.27 514 [ 1.39]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 1144 0.27 517 [ 0.45]
'Elixir.Ratio':'lt?'/2 1107 0.28 526 [ 0.48]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 1144 0.28 526 [ 0.46]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 369 0.28 528 [ 1.43]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 1107 0.28 530 [ 0.48]
'Elixir.Membrane.Pad.Data':fetch/2 1107 0.28 531 [ 0.48]
'Elixir.Ratio':normalize_denom_num/2 1107 0.28 537 [ 0.49]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 738 0.28 537 [ 0.73]
'Elixir.MapSet':delete/2 738 0.28 540 [ 0.73]
'Elixir.Enum':map/2 1882 0.29 560 [ 0.30]
'Elixir.Membrane.Time':monotonic_time/0 738 0.29 561 [ 0.76]
'Elixir.Membrane.Time':vm_time/0 369 0.30 569 [ 1.54]
'Elixir.Access':key/2 1513 0.30 572 [ 0.38]
erlang:'=<'/2 1476 0.30 573 [ 0.39]
lists:do_flatten/2 1476 0.31 583 [ 0.39]
'Elixir.Membrane.RTP.JitterBuffer':handle_process/4 369 0.33 624 [ 1.69]
'Elixir.Bunch.Enum':chunk_by_prev/3 1144 0.33 630 [ 0.55]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 369 0.33 633 [ 1.72]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 775 0.35 673 [ 0.87]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':do_insert_buffer/3 369 0.36 679 [ 1.84]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 369 0.36 683 [ 1.85]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 1513 0.36 683 [ 0.45]
'Elixir.Enum':aggregate_by/4 738 0.36 693 [ 0.94]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 2694 0.38 717 [ 0.27]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':shift/1 369 0.38 726 [ 1.97]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 406 0.39 738 [ 1.82]
'Elixir.Ratio':'<|>'/2 1107 0.39 747 [ 0.67]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 2657 0.40 767 [ 0.29]
'Elixir.Bunch.Struct':update_in/3 775 0.40 771 [ 0.99]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 1513 0.41 776 [ 0.51]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 1144 0.41 779 [ 0.68]
erlang:'++'/2 1882 0.42 795 [ 0.42]
'Elixir.Enumerable':impl_for/1 3026 0.43 816 [ 0.27]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 1513 0.43 821 [ 0.54]
'Elixir.System':convert_time_unit/3 1107 0.43 822 [ 0.74]
'Elixir.Membrane.Core.InputBuffer':do_take/2 775 0.43 823 [ 1.06]
'Elixir.Bunch.Access':update_in/3 1513 0.43 824 [ 0.54]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':add_record/2 369 0.45 859 [ 2.33]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 1550 0.45 861 [ 0.56]
'Elixir.Membrane.Pad.Data':get_and_update/3 2694 0.45 864 [ 0.32]
'Elixir.Enum':split_while_list/3 1513 0.46 876 [ 0.58]
'Elixir.Qex':pop/1 1144 0.46 880 [ 0.77]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 1513 0.48 906 [ 0.60]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 1144 0.48 923 [ 0.81]
'Elixir.Membrane.RTP.JitterBuffer':send_buffers/1 369 0.48 923 [ 2.50]
'Elixir.Membrane.Core.Element.State':get_and_update/3 3063 0.49 927 [ 0.30]
'Elixir.Enum':'-aggregate_by/4-lists^foldl/2-0-'/3 2214 0.49 941 [ 0.43]
'Elixir.Kernel':update_in/3 1513 0.50 946 [ 0.63]
'Elixir.Bunch.Access':put_in/3 1919 0.51 964 [ 0.50]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 406 0.51 972 [ 2.39]
'Elixir.Bunch.Enum':try_reduce/3 2288 0.51 972 [ 0.42]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 775 0.54 1029 [ 1.33]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 1144 0.55 1040 [ 0.91]
'Elixir.Enum':drop_while_list/2 2288 0.55 1055 [ 0.46]
'Elixir.Membrane.RTP.JitterBuffer.BufferStore':shift_while/3 1107 0.56 1064 [ 0.96]
'Elixir.Membrane.RTP.JitterBuffer':record_to_action/2 369 0.56 1065 [ 2.89]
'Elixir.Enum':'-aggregate_by/4-fun-1-'/4 1476 0.60 1146 [ 0.78]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 2325 0.62 1175 [ 0.51]
'Elixir.Enum':reverse/1 4539 0.62 1188 [ 0.26]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 1882 0.67 1273 [ 0.68]
'Elixir.Membrane.RTP.JitterBuffer':update_jitter/2 369 0.69 1314 [ 3.56]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 1513 0.70 1340 [ 0.89]
'Elixir.Ratio':simplify/1 1107 0.71 1360 [ 1.23]
'Elixir.Enum':reduce_while/3 2657 0.73 1397 [ 0.53]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 1144 0.74 1411 [ 1.23]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 775 0.75 1427 [ 1.84]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 1550 0.75 1437 [ 0.93]
'Elixir.Enumerable':'impl_for!'/1 3026 0.78 1485 [ 0.49]
'Elixir.Kernel':put_in/3 2657 0.88 1679 [ 0.63]
erlang:send/2 406 0.92 1750 [ 4.31]
erlang:convert_time_unit/3 1107 0.94 1797 [ 1.62]
'Elixir.Access':'-key/2-fun-0-'/5 1513 0.95 1808 [ 1.19]
'Elixir.Enumerable':reduce/3 3026 0.99 1893 [ 0.63]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 1144 1.06 2026 [ 1.77]
'Elixir.Enumerable.List':reduce/3 5646 1.17 2237 [ 0.40]
'Elixir.Bunch.Access':get_in/2 5388 1.20 2281 [ 0.42]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 8451 1.25 2384 [ 0.28]
'Elixir.Membrane.Core.Element.State':fetch/2 5388 1.25 2384 [ 0.44]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 4133 1.30 2484 [ 0.60]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 9558 1.32 2517 [ 0.26]
'Elixir.Ratio':gcd/2 12037 1.41 2678 [ 0.22]
maps:find/2 6495 1.42 2713 [ 0.42]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 8082 1.83 3477 [ 0.43]
'Elixir.Access':get/2 17677 1.85 3517 [ 0.20]
'Elixir.Bunch':listify/1 19190 2.21 4214 [ 0.22]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 5388 2.35 4477 [ 0.83]
'Elixir.Map':get/3 15610 2.47 4708 [ 0.30]
gen_server:loop/7 406 2.84 5414 [ 13.33]
'Elixir.Kernel':get_in/2 17271 3.01 5734 [ 0.33]
'Elixir.Kernel':get_and_update_in/3 14872 3.07 5848 [ 0.39]
'Elixir.Access':get/3 17677 3.09 5884 [ 0.33]
'Elixir.Access':get_and_update/3 13359 3.28 6251 [ 0.47]
'Elixir.Map':get_and_update/3 13359 7.41 14108 [ 1.06]
----------------------------------------------------------------------------------------- ------ ------- ------ [----------]
Total: 384129 100.00% 190398 [ 0.50]
****** Process <9928.4253.0> -- 0.31 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Ratio':remove_denominator_if_integer/1 10 0.00 3 [ 0.30]
'Elixir.Membrane.Core.Element.ActionHandler':handle_event/3 10 0.00 3 [ 0.30]
'Elixir.Membrane.Core.Component':action_handler/1 10 0.00 3 [ 0.30]
'Elixir.Ratio':'/'/2 10 0.00 4 [ 0.40]
'Elixir.Ratio':'<'/2 10 0.00 4 [ 0.40]
'Elixir.Ratio':'=='/2 10 0.00 4 [ 0.40]
'Elixir.Ratio':abs/1 10 0.00 4 [ 0.40]
'Elixir.Ratio':floor/1 10 0.00 4 [ 0.40]
'Elixir.Membrane.RTCP.Receiver':handle_tick/3 10 0.00 4 [ 0.40]
'Elixir.Membrane.RTCP.Receiver':'-send_fir/1-fun-0-'/1 10 0.00 4 [ 0.40]
'Elixir.Ratio':'+'/2 20 0.01 5 [ 0.25]
'Elixir.Ratio':compare/2 20 0.01 5 [ 0.25]
'Elixir.Ratio':'eq?'/2 10 0.01 5 [ 0.50]
'Elixir.Ratio':'lt?'/2 10 0.01 6 [ 0.60]
'Elixir.Ratio':normalize_denom_num/2 10 0.01 6 [ 0.60]
'Elixir.Membrane.Time':to_milliseconds/1 10 0.01 6 [ 0.60]
'Elixir.Ratio':gcd/2 20 0.01 7 [ 0.35]
'Elixir.Ratio':'<|>'/2 10 0.01 10 [ 1.00]
'Elixir.Membrane.Core.TimerController':'-handle_tick/2-fun-2-'/1 10 0.01 12 [ 1.20]
'Elixir.Map':'update!'/3 10 0.01 12 [ 1.20]
'Elixir.Membrane.RTCP.Receiver':handle_demand/5 37 0.01 13 [ 0.35]
'Elixir.Ratio':simplify/1 10 0.01 14 [ 1.40]
'Elixir.Membrane.EventProtocol.Any':'sticky?'/1 47 0.01 14 [ 0.30]
'Elixir.Membrane.EventProtocol.Any':'async?'/1 47 0.02 15 [ 0.32]
'Elixir.Membrane.Core.Element.EventController':exec_handle_event/3 47 0.02 16 [ 0.34]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 37 0.02 18 [ 0.49]
'Elixir.Membrane.Core.Element.EventController':check_sync/2 47 0.02 18 [ 0.38]
'Elixir.Membrane.Core.Element.EventController':handle_special_event/3 47 0.02 18 [ 0.38]
'Elixir.Membrane.Event':'async?'/1 47 0.02 18 [ 0.38]
'Elixir.Membrane.Core.Element.ActionHandler':send_event/3 10 0.02 19 [ 1.90]
'Elixir.Membrane.Event':'event?'/1 10 0.02 21 [ 2.10]
'Elixir.Membrane.Event':'sticky?'/1 47 0.02 24 [ 0.51]
'Elixir.Membrane.Core.Child.PadModel':'assert_instance!'/2 47 0.03 26 [ 0.55]
'Elixir.Membrane.Core.TimerController':handle_tick/2 10 0.03 27 [ 2.70]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-6-'/3 47 0.03 28 [ 0.60]
erlang:send_after/4 10 0.03 28 [ 2.80]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 37 0.03 29 [ 0.78]
'Elixir.Membrane.EventProtocol':impl_for/1 104 0.03 29 [ 0.28]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 37 0.03 30 [ 0.81]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 37 0.03 31 [ 0.84]
'Elixir.Membrane.RTCP.Receiver':send_fir/1 10 0.03 32 [ 3.20]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 37 0.03 33 [ 0.89]
'Elixir.Membrane.Core.Element.EventController':'buffers_before_event_present?'/1 47 0.03 33 [ 0.70]
'Elixir.Membrane.Core.Timer':tick/1 10 0.03 34 [ 3.40]
'Elixir.Membrane.EventProtocol':'async?'/1 47 0.04 36 [ 0.77]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 37 0.04 37 [ 1.00]
'Elixir.Membrane.EventProtocol':'impl_for!'/1 94 0.04 44 [ 0.47]
'Elixir.Membrane.EventProtocol':'sticky?'/1 47 0.05 49 [ 1.04]
'Elixir.Membrane.Core.Element.EventController':exec_handle_event/4 47 0.05 53 [ 1.13]
'Elixir.Membrane.Core.Element.EventController':do_exec_handle_event/4 47 0.06 58 [ 1.23]
'Elixir.Membrane.Core.Element.EventController':'-do_exec_handle_event/4-fun-0-'/1 47 0.07 67 [ 1.43]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 37 0.07 70 [ 1.89]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 37 0.08 75 [ 2.03]
'Elixir.Membrane.Core.Element.EventController':handle_event/3 47 0.09 88 [ 1.87]
'Elixir.Membrane.RTCP.Receiver':handle_event/4 47 0.10 100 [ 2.13]
'Elixir.Membrane.RTCP.Receiver':'-handle_process_list/4-fun-0-'/2 369 0.11 111 [ 0.30]
gen_server:try_dispatch/3 463 0.13 134 [ 0.29]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 369 0.14 140 [ 0.38]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 369 0.14 142 [ 0.38]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 369 0.14 143 [ 0.39]
'Elixir.Membrane.Core.InputBuffer':store/2 369 0.15 145 [ 0.39]
'Elixir.Membrane.Buffer.Metric':from_unit/1 369 0.15 146 [ 0.40]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 369 0.15 149 [ 0.40]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_buffer/5-fun-0-'/2 369 0.15 149 [ 0.40]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 406 0.15 149 [ 0.37]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 406 0.15 150 [ 0.37]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 369 0.15 150 [ 0.41]
erlang:max/2 443 0.16 155 [ 0.35]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 406 0.16 157 [ 0.39]
lists:flatten/1 369 0.16 159 [ 0.43]
gen_server:handle_common_reply/8 463 0.16 161 [ 0.35]
'Elixir.Membrane.Time':to_ntp_timestamp/1 47 0.16 163 [ 3.47]
'Elixir.Membrane.Helper.GenServer':noreply/2 463 0.17 166 [ 0.36]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 369 0.17 166 [ 0.45]
gen_server:decode_msg/9 463 0.17 166 [ 0.36]
'Elixir.Membrane.RTCP.Receiver':handle_process/4 369 0.17 167 [ 0.45]
'Elixir.Keyword':get/2 453 0.17 168 [ 0.37]
'Elixir.Membrane.Core.Child.PadModel':'-update_multi/3-fun-0-'/2 369 0.17 168 [ 0.46]
'Elixir.List':flatten/1 369 0.17 170 [ 0.46]
'Elixir.Enum':reduce/3 369 0.17 173 [ 0.47]
queue:in/2 369 0.17 174 [ 0.47]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 369 0.18 184 [ 0.50]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 416 0.19 190 [ 0.46]
'Elixir.Bunch.Enum':try_reduce_while/3 369 0.19 190 [ 0.51]
'Elixir.Access':key/2 406 0.19 191 [ 0.47]
'Elixir.Membrane.Core.Child.PadModel':apply_updates/2 369 0.19 191 [ 0.52]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 406 0.20 195 [ 0.48]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 574 0.20 203 [ 0.35]
maps:merge/2 416 0.21 207 [ 0.50]
'Elixir.Membrane.Core.Message':for_pad/1 453 0.21 210 [ 0.46]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 785 0.21 212 [ 0.27]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 406 0.22 217 [ 0.53]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 785 0.23 230 [ 0.29]
'Elixir.Bunch.Access':get_and_update_in/3 406 0.24 239 [ 0.59]
'Elixir.Enum':split_while/2 832 0.24 240 [ 0.29]
lists:reverse/1 832 0.25 246 [ 0.30]
lists:keyfind/3 453 0.25 247 [ 0.55]
queue:out/1 775 0.26 259 [ 0.33]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 738 0.26 264 [ 0.36]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 463 0.26 264 [ 0.57]
'Elixir.Enum':drop_while/2 832 0.27 267 [ 0.32]
'Elixir.Membrane.Core.Child.PadModel':'update_multi!'/3 369 0.27 268 [ 0.73]
'Elixir.Bunch.Enum':try_each/2 369 0.27 268 [ 0.73]
'Elixir.Membrane.Core.Message':send/4 416 0.28 278 [ 0.67]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 832 0.28 283 [ 0.34]
'Elixir.Membrane.RTCP.Receiver':handle_process_list/4 369 0.29 292 [ 0.79]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 812 0.29 292 [ 0.36]
erlang:'++'/2 832 0.30 295 [ 0.35]
'Elixir.Keyword':get/3 453 0.31 311 [ 0.69]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 369 0.31 311 [ 0.84]
gen_server:handle_msg/6 463 0.31 311 [ 0.67]
'Elixir.Membrane.Core.InputBuffer':store/3 369 0.32 320 [ 0.87]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 369 0.32 322 [ 0.87]
'Elixir.Enum':to_list/1 1201 0.32 323 [ 0.27]
'Elixir.Qex':push/2 369 0.33 325 [ 0.88]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 879 0.33 325 [ 0.37]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 369 0.33 334 [ 0.91]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 369 0.34 339 [ 0.92]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 406 0.35 351 [ 0.86]
gen_server:try_dispatch/4 463 0.35 354 [ 0.76]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 406 0.36 358 [ 0.88]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 406 0.38 376 [ 0.93]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 832 0.38 380 [ 0.46]
'Elixir.Bunch.Struct':update_in/3 406 0.38 380 [ 0.94]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 369 0.38 382 [ 1.04]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 369 0.38 382 [ 1.04]
'Elixir.Enum':map/2 1144 0.38 383 [ 0.33]
'Elixir.Membrane.Core.Element':handle_info/2 463 0.39 387 [ 0.84]
'Elixir.Bunch.Enum':do_try_each/2 738 0.40 398 [ 0.54]
'Elixir.Membrane.Core.Child.PadModel':update_multi/3 369 0.41 411 [ 1.11]
'Elixir.Map':update/4 369 0.41 413 [ 1.12]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 785 0.42 419 [ 0.53]
'Elixir.Enum':split_while_list/3 832 0.42 423 [ 0.51]
'Elixir.Bunch.Enum':chunk_by_prev/3 832 0.43 427 [ 0.51]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 369 0.44 441 [ 1.20]
'Elixir.Bunch.Access':put_in/3 812 0.44 442 [ 0.54]
'Elixir.Membrane.Core.InputBuffer':do_take/2 406 0.46 459 [ 1.13]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 1597 0.47 471 [ 0.29]
'Elixir.Enumerable':impl_for/1 1976 0.48 476 [ 0.24]
'Elixir.Membrane.Pad.Data':get_and_update/3 1587 0.48 476 [ 0.30]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 453 0.48 482 [ 1.06]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 832 0.49 490 [ 0.59]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 812 0.49 491 [ 0.60]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 785 0.52 517 [ 0.66]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 369 0.53 526 [ 1.43]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 369 0.53 530 [ 1.44]
'Elixir.Membrane.Core.Child.PadModel':'-apply_updates/2-fun-0-'/2 738 0.53 532 [ 0.72]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 832 0.53 532 [ 0.64]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 406 0.54 537 [ 1.32]
'Elixir.Membrane.Pad.Data':fetch/2 1107 0.54 540 [ 0.49]
'Elixir.Access':'-key/2-fun-0-'/5 406 0.56 557 [ 1.37]
'Elixir.Qex':pop/1 775 0.57 569 [ 0.73]
'Elixir.Kernel':put_in/3 812 0.57 571 [ 0.70]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 785 0.57 573 [ 0.73]
'Elixir.Enum':reverse/1 2345 0.59 588 [ 0.25]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 775 0.60 594 [ 0.77]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 785 0.60 603 [ 0.77]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 1154 0.62 617 [ 0.53]
'Elixir.Membrane.Core.Element.State':get_and_update/3 1966 0.63 629 [ 0.32]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 1107 0.65 645 [ 0.58]
'Elixir.Bunch.Access':update_in/3 1154 0.65 648 [ 0.56]
'Elixir.Enum':drop_while_list/2 1617 0.65 653 [ 0.40]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 738 0.67 664 [ 0.90]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 1312 0.67 669 [ 0.51]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 369 0.68 674 [ 1.83]
'Elixir.Bunch.Enum':try_reduce/3 1607 0.68 676 [ 0.42]
lists:do_flatten/2 1476 0.69 686 [ 0.46]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 1154 0.76 755 [ 0.65]
'Elixir.Kernel':update_in/3 1154 0.76 757 [ 0.66]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 369 0.76 758 [ 2.05]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 406 0.77 767 [ 1.89]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 812 0.78 780 [ 0.96]
'Elixir.Enumerable':'impl_for!'/1 1976 0.93 931 [ 0.47]
'Elixir.Enum':reduce_while/3 1976 0.95 951 [ 0.48]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 832 1.01 1007 [ 1.21]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 453 1.07 1072 [ 2.37]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 2288 1.13 1127 [ 0.49]
'Elixir.Enumerable':reduce/3 1976 1.24 1236 [ 0.63]
'Elixir.Enumerable.List':reduce/3 3499 1.33 1325 [ 0.38]
'Elixir.Bunch.Access':get_in/2 3278 1.42 1413 [ 0.43]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 5281 1.51 1506 [ 0.29]
maps:find/2 4385 1.51 1511 [ 0.34]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 5519 1.53 1531 [ 0.28]
'Elixir.Membrane.Core.Element.State':fetch/2 3278 1.55 1544 [ 0.47]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 832 1.60 1598 [ 1.92]
erlang:send/2 416 1.88 1874 [ 4.50]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 4865 2.12 2114 [ 0.43]
'Elixir.Access':get/2 10978 2.17 2169 [ 0.20]
'Elixir.Map':get/3 8260 2.37 2368 [ 0.29]
'Elixir.Bunch':listify/1 11290 2.58 2573 [ 0.23]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 3278 2.70 2697 [ 0.82]
gen_server:loop/7 463 2.95 2939 [ 6.35]
'Elixir.Kernel':get_and_update_in/3 7891 3.08 3077 [ 0.39]
'Elixir.Kernel':get_in/2 10941 3.61 3604 [ 0.33]
'Elixir.Access':get_and_update/3 7485 3.64 3635 [ 0.49]
'Elixir.Access':get/3 10978 3.83 3823 [ 0.35]
'Elixir.Map':get_and_update/3 7485 8.54 8522 [ 1.14]
----------------------------------------------------------------------------------------- ------ ------- ----- [----------]
Total: 197461 100.00% 99766 [ 0.51]
****** Process <9928.4254.0> -- 0.30 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 37 0.02 16 [ 0.43]
'Elixir.Membrane.SRTP.Decryptor':handle_demand/5 37 0.02 19 [ 0.51]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 37 0.03 26 [ 0.70]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 37 0.03 26 [ 0.70]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 37 0.03 28 [ 0.76]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 37 0.03 29 [ 0.78]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 37 0.03 30 [ 0.81]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 37 0.05 49 [ 1.32]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 37 0.07 68 [ 1.84]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 369 0.11 103 [ 0.28]
'Elixir.Membrane.Buffer.Metric':from_unit/1 369 0.11 107 [ 0.29]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 369 0.11 111 [ 0.30]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 369 0.12 113 [ 0.31]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 369 0.12 113 [ 0.31]
'Elixir.Membrane.RTP.Utils':strip_padding/2 369 0.12 118 [ 0.32]
lists:flatten/1 369 0.12 119 [ 0.32]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 406 0.12 119 [ 0.29]
queue:in/2 369 0.12 120 [ 0.33]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_buffer/5-fun-0-'/2 369 0.12 120 [ 0.33]
gen_server:try_dispatch/3 406 0.12 121 [ 0.30]
'Elixir.Membrane.Core.InputBuffer':store/2 369 0.13 123 [ 0.33]
'Elixir.Membrane.SRTP.Decryptor':'-handle_process_list/4-fun-0-'/2 369 0.13 124 [ 0.34]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 369 0.13 125 [ 0.34]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 369 0.13 126 [ 0.34]
erlang:max/2 443 0.13 126 [ 0.28]
'Elixir.Keyword':get/2 406 0.13 127 [ 0.31]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 369 0.13 127 [ 0.34]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 406 0.13 127 [ 0.31]
'Elixir.Enum':reduce/3 369 0.13 130 [ 0.35]
'Elixir.Membrane.Core.Child.PadModel':'-update_multi/3-fun-0-'/2 369 0.14 133 [ 0.36]
'Elixir.Bunch.Enum':try_reduce_while/3 369 0.14 133 [ 0.36]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 406 0.14 138 [ 0.34]
'Elixir.List':flatten/1 369 0.15 142 [ 0.38]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 369 0.15 142 [ 0.38]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 480 0.15 145 [ 0.30]
'Elixir.ExLibSRTP':unprotect/2 369 0.16 153 [ 0.41]
gen_server:decode_msg/9 406 0.16 157 [ 0.39]
'Elixir.Membrane.Core.Child.PadModel':apply_updates/2 369 0.16 159 [ 0.43]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 406 0.17 164 [ 0.40]
gen_server:handle_common_reply/8 406 0.18 172 [ 0.42]
'Elixir.Access':key/2 406 0.18 174 [ 0.43]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 406 0.18 178 [ 0.44]
lists:keyfind/3 406 0.19 183 [ 0.45]
maps:merge/2 369 0.19 187 [ 0.51]
'Elixir.Membrane.Helper.GenServer':noreply/2 406 0.20 191 [ 0.47]
'Elixir.ExLibSRTP.Native':unprotect/4 369 0.20 194 [ 0.53]
'Elixir.ExLibSRTP':unprotect/3 369 0.20 195 [ 0.53]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 775 0.21 204 [ 0.26]
'Elixir.Membrane.Core.Child.PadModel':'update_multi!'/3 369 0.21 204 [ 0.55]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 775 0.21 206 [ 0.27]
'Elixir.Bunch.Access':get_and_update_in/3 406 0.21 207 [ 0.51]
'Elixir.Enum':split_while/2 775 0.21 208 [ 0.27]
'Elixir.Membrane.Buffer.Metric.Count':buffers_size/1 738 0.22 213 [ 0.29]
'Elixir.Membrane.Core.Message':for_pad/1 406 0.23 220 [ 0.54]
'Elixir.Enum':drop_while/2 775 0.23 220 [ 0.28]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 812 0.24 232 [ 0.29]
lists:reverse/1 775 0.24 236 [ 0.30]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_callback/5 406 0.24 236 [ 0.58]
'Elixir.Membrane.Core.Message':send/4 406 0.25 243 [ 0.60]
erlang:'++'/2 775 0.25 248 [ 0.32]
'Elixir.Membrane.Core.Element.ActionHandler':'handle_actions (overridable 1)'/4 775 0.26 250 [ 0.32]
'Elixir.Membrane.Core.CallbackHandler':exec_and_handle_splitted_callback/6 369 0.26 251 [ 0.68]
'Elixir.Membrane.Core.Child.PadModel':'update_data!'/4 369 0.28 270 [ 0.73]
'Elixir.Bunch.Enum':try_each/2 369 0.28 273 [ 0.74]
queue:out/1 775 0.29 282 [ 0.36]
'Elixir.Membrane.SRTP.Decryptor':handle_process_list/4 369 0.29 284 [ 0.77]
gen_server:try_dispatch/4 406 0.29 284 [ 0.70]
'Elixir.Membrane.Core.Element.DemandHandler':supply_demand/2 406 0.29 285 [ 0.70]
'Elixir.Qex':push/2 369 0.29 286 [ 0.78]
'Elixir.Membrane.Core.Element.DemandHandler':handle_delayed_demands/1 406 0.29 287 [ 0.71]
'Elixir.Membrane.Core.Child.PadModel':'get_and_update_data!'/4 406 0.30 291 [ 0.72]
'Elixir.Bunch.Enum':'-try_reduce_while/3-fun-0-'/3 369 0.30 291 [ 0.79]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 775 0.30 296 [ 0.38]
'Elixir.Membrane.Core.InputBuffer':store/3 369 0.30 297 [ 0.80]
'Elixir.Bunch.Enum':do_try_each/2 738 0.31 298 [ 0.40]
'Elixir.Enum':to_list/1 1144 0.31 300 [ 0.26]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer/3 369 0.31 301 [ 0.82]
'Elixir.Membrane.Core.Element.DemandHandler':do_handle_input_buf_output/3 369 0.32 308 [ 0.83]
'Elixir.Membrane.Core.Element':handle_info/2 406 0.33 322 [ 0.79]
gen_server:handle_msg/6 406 0.35 340 [ 0.84]
'Elixir.Bunch.Struct':update_in/3 406 0.35 341 [ 0.84]
'Elixir.Keyword':get/3 406 0.35 343 [ 0.84]
'Elixir.Enum':map/2 1144 0.35 345 [ 0.30]
'Elixir.Membrane.Core.Child.PadModel':update_multi/3 369 0.36 354 [ 0.96]
'Elixir.Membrane.Core.Child.PadModel':get_data/2 1587 0.39 378 [ 0.24]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/4 369 0.39 378 [ 1.02]
'Elixir.Enum':split_while_list/3 775 0.39 381 [ 0.49]
'Elixir.Membrane.Core.InputBuffer':do_take/2 406 0.39 385 [ 0.95]
'Elixir.Membrane.Core.Element.ActionHandler':join_buffers/1 775 0.40 387 [ 0.50]
'Elixir.Membrane.Pad.Data':get_and_update/3 1587 0.40 390 [ 0.25]
'Elixir.Membrane.Core.CallbackHandler':handle_callback_result/5 775 0.40 391 [ 0.50]
'Elixir.Bunch.Access':put_in/3 812 0.40 392 [ 0.48]
'Elixir.Membrane.Core.Element.ActionHandler':handle_buffer/5 369 0.41 398 [ 1.08]
'Elixir.Access':'-key/2-fun-0-'/5 406 0.41 401 [ 0.99]
'Elixir.Membrane.Core.Element.PlaybackBuffer':store/2 406 0.42 408 [ 1.00]
'Elixir.Map':update/4 369 0.42 410 [ 1.11]
'Elixir.Membrane.Core.Element.ActionHandler':handle_action/4 775 0.43 420 [ 0.54]
'Elixir.Bunch.Enum':chunk_by_prev/3 775 0.43 422 [ 0.54]
'Elixir.Enumerable':impl_for/1 1919 0.43 423 [ 0.22]
'Elixir.Membrane.Core.Child.PadModel':'set_data!'/4 812 0.45 437 [ 0.54]
'Elixir.Membrane.Core.Child.PadModel':'-apply_updates/2-fun-0-'/2 738 0.46 446 [ 0.60]
'Elixir.Qex':pop/1 775 0.47 461 [ 0.59]
'Elixir.Membrane.Pad.Data':fetch/2 1107 0.48 473 [ 0.43]
'Elixir.Membrane.Core.InputBuffer':take_and_demand/4 406 0.49 478 [ 1.18]
'Elixir.Membrane.Core.CallbackHandler':exec_handle_actions/5 775 0.49 483 [ 0.62]
'Elixir.Membrane.Core.InputBuffer':q_pop/4 775 0.50 491 [ 0.63]
'Elixir.Membrane.Core.Element.ActionHandler':do_handle_action/4 775 0.51 493 [ 0.64]
'Elixir.Enum':'-reduce/3-lists^foldl/2-0-'/3 1107 0.51 494 [ 0.45]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-1-'/7 369 0.51 500 [ 1.36]
lists:do_flatten/2 1476 0.51 502 [ 0.34]
'Elixir.Membrane.Core.Element.BufferController':'-exec_buffer_handler/4-fun-0-'/1 738 0.52 512 [ 0.69]
'Elixir.Kernel':put_in/3 812 0.55 532 [ 0.66]
'Elixir.Membrane.Core.Element.State':get_and_update/3 1956 0.55 535 [ 0.27]
'Elixir.Bunch.Access':update_in/3 1144 0.55 541 [ 0.47]
'Elixir.Enum':reverse/1 2325 0.56 542 [ 0.23]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/3 1218 0.56 543 [ 0.45]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-1-'/1 775 0.56 549 [ 0.71]
'Elixir.Membrane.Core.InputBuffer':do_store_buffers/2 369 0.56 550 [ 1.49]
'Elixir.Enum':drop_while_list/2 1550 0.57 558 [ 0.36]
'Elixir.Bunch.Enum':do_chunk_by_prev/4 775 0.60 587 [ 0.76]
'Elixir.Bunch.Enum':'-try_reduce/3-fun-0-'/3 1144 0.61 597 [ 0.52]
'Elixir.Bunch.Enum':try_reduce/3 1550 0.62 602 [ 0.39]
'Elixir.Membrane.Core.Element.ActionHandler':send_buffer/4 369 0.63 612 [ 1.66]
'Elixir.Membrane.Core.Element.BufferController':handle_buffer_pull/3 369 0.64 620 [ 1.68]
'Elixir.Kernel':'-update_in/3-fun-0-'/2 1144 0.66 641 [ 0.56]
'Elixir.Kernel':update_in/3 1144 0.68 663 [ 0.58]
'Elixir.Membrane.Core.Element.DemandHandler':do_supply_demand/2 406 0.68 664 [ 1.64]
'Elixir.Membrane.Core.Child.PadModel':set_data/4 812 0.75 734 [ 0.90]
'Elixir.Membrane.SRTP.Decryptor':handle_process/4 369 0.79 775 [ 2.10]
'Elixir.Enumerable':'impl_for!'/1 1919 0.87 846 [ 0.44]
'Elixir.Enum':reduce_while/3 1919 0.93 908 [ 0.47]
'Elixir.Membrane.Core.Element.ActionHandler':handle_actions/4 775 1.02 991 [ 1.28]
maps:find/2 4281 1.14 1111 [ 0.26]
'Elixir.Enumerable':reduce/3 1919 1.15 1120 [ 0.58]
'Elixir.Enum':'-map/2-lists^map/1-0-'/2 2288 1.16 1132 [ 0.49]
'Elixir.Membrane.Core.Element.PlaybackBuffer':exec/2 406 1.20 1169 [ 2.88]
'Elixir.Kernel':'-get_and_update_in/3-fun-1-'/3 5499 1.28 1250 [ 0.23]
'Elixir.Membrane.Core.Element.State':fetch/2 3174 1.36 1323 [ 0.42]
'Elixir.Bunch.Access':get_in/2 3174 1.38 1347 [ 0.42]
'Elixir.Membrane.Core.Child.PadModel':assert_instance/2 5130 1.47 1439 [ 0.28]
'Elixir.Enumerable.List':reduce/3 3432 1.51 1471 [ 0.43]
'Elixir.Membrane.Core.CallbackHandler':exec_callback/4 775 1.52 1485 [ 1.92]
erlang:send/2 406 1.96 1912 [ 4.71]
'Elixir.Membrane.Core.Child.PadModel':data_keys/2 4761 1.98 1934 [ 0.41]
'Elixir.Access':get/2 10666 2.10 2048 [ 0.19]
'Elixir.Map':get/3 8230 2.33 2274 [ 0.28]
'Elixir.Bunch':listify/1 11072 2.40 2341 [ 0.21]
'Elixir.Membrane.Core.Child.PadModel':get_data/3 3174 2.69 2628 [ 0.83]
'Elixir.Access':get_and_update/3 7455 2.88 2812 [ 0.38]
'Elixir.Kernel':get_and_update_in/3 7861 2.91 2839 [ 0.36]
'Elixir.Kernel':get_in/2 10629 3.54 3451 [ 0.32]
'Elixir.Access':get/3 10666 3.68 3594 [ 0.34]
gen_server:loop/7 406 4.31 4206 [ 10.36]
'Elixir.ExLibSRTP.Native.Nif':unifex_unprotect/4 369 5.81 5674 [ 15.38]
'Elixir.Map':get_and_update/3 7455 8.24 8039 [ 1.08]
----------------------------------------------------------------------------------------- ------ ------- ----- [----------]
Total: 193496 100.00% 97609 [ 0.50]
****** Process <9928.4255.0> -- 0.16 % of profiled time ***
FUNCTION CALLS % TIME [uS / CALLS]
-------- ----- ------- ---- [----------]
'Elixir.Membrane.WebRTC.TrackFilter':handle_demand/5 21 0.02 9 [ 0.43]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-0-'/2 21 0.02 11 [ 0.52]
'Elixir.Membrane.Core.Element.DemandController':'exec_handle_demand?'/2 21 0.03 18 [ 0.86]
'Elixir.Membrane.Core.Element.DemandController':'ignore?'/2 21 0.03 18 [ 0.86]
'Elixir.Membrane.Core.Element.DemandController':'-do_handle_demand/3-fun-1-'/2 21 0.03 18 [ 0.86]
'Elixir.Membrane.Core.Element.DemandController':handle_demand/3 21 0.04 19 [ 0.90]
'Elixir.Membrane.Core.Element.DemandHandler':update_demand/3 21 0.04 19 [ 0.90]
'Elixir.Membrane.Core.Element.ActionHandler':supply_demand/4 21 0.05 29 [ 1.38]
'Elixir.Membrane.Core.Element.DemandController':do_handle_demand/3 21 0.08 41 [ 1.95]
'Elixir.Membrane.Core.Element.DemandHandler':'-do_handle_input_buf_output/3-fun-0-'/2 206 0.13 71 [ 0.34]
'Elixir.Membrane.Core.Element.PlaybackBuffer':'-exec/2-fun-2-'/1 206 0.13 72 [ 0.35]
queue:in/2 206 0.14 74 [ 0.36]
'Elixir.Membrane.Core.InputBuffer':'-take_and_demand/4-fun-1-'/3 227 0.14 74 [ 0.33]
gen_server:try_dispatch/3 227 0.14 76 [ 0.33]
'Elixir.Keyword':get/2 227 0.15 78 [ 0.34]
'Elixir.Membrane.Core.Element.BufferController':exec_buffer_handler/3 206 0.15 79 [ 0.38]
'Elixir.Membrane.Core.InputBuffer':q_pop/3 227 0.15 80 [ 0.35]
gen_server:handle_common_reply/8 227 0.15 81 [ 0.36]
'Elixir.Membrane.Helper.GenServer':noreply/2 227 0.15 82 [ 0.36]
erlang:max/2 227 0.16 85 [ 0.37]
maps:merge/2 206 0.16 86 [ 0.42]
'Elixir.Membrane.Core.Element.DemandHandler':'-handle_input_buf_output/3-fun-0-'/3 206 0.16 86 [ 0.42]
'Elixir.Bunch.Struct':'-update_in/3-anonymous-0-'/1 227 0.16 87 [ 0.38]
'Elixir.Membrane.Core.InputBuffer':'empty?'/1 206 0.16 87 [ 0.42]
'Elixir.Access':key/2 227 0.17 90 [ 0.40]
'Elixir.Membrane.WebRTC.TrackFilter':'-handle_process_list/4-fun-0-'/2 206 0.17 91 [ 0.44]
'Elixir.Membrane.Core.InputBuffer':store/2 206 0.17 91 [ 0.44]
'Elixir.Membrane.Core.Message':for_pad/1 227 0.17 92 [ 0.41]
'Elixir.Membrane.Core.Element.ActionHandler':'-join_buffers/1-fun-0-'/1 206 0.18 94 [ 0.46]
'Elixir.Membrane.Core.InputBuffer':send_demands/3 227 0.18 95 [ 0.42]
'Elixir.Membrane.WebRTC.TrackFilter':handle_process/4 206 0.19 100 [ 0.49]
gen_server:decode_msg/9 227 0.19 100 [ 0.44]
'Elixir.Membrane.Core.Child.PadModel':'-update_multi/3-fun-0-'/2 206 0.19 101 [ 0.49]
'Elixir.Membrane.Core.Element.DemandHandler':handle_input_buf_output/3 227 0.19 102 [ 0.45]
'Elixir.Membrane.Core.CallbackHandler':'-exec_and_handle_splitted_callback/6-fun-0-'/1 206 0.19 102 [ 0.50]
lists:keyfind/3 227 0.19 104 [ 0.46]
'Elixir.Membrane.Core.Element.ActionHandler':'-send_buffer/4-fun-4-'/1 206 0.20 107 [ 0.52]
'Elixir.List':flatten/1 206 0.20 107 [ 0.52]
lists:flatten/1 206 0.20 108 [ 0.52]
'Elixir.Enum':reduce/3 206 0.21 111 [ 0.54]
'Elixir.Membrane.Core.Child.PadModel':'get_data!'/2 269 0.21 113 [ 0.42]
'Elixir.Membrane.Core.CallbackHandler':parse_callback_result/4 433 0.22 116 [ 0.27]
'Elixir.Membrane.Buffer.Metric':from_unit/1 206 0.23 122 [ 0.59]
'Elixir.Membrane.Core.Child.PadModel':apply_updates/2 206 0.23 123 [ 0.60]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_buffer/5-fun-0-'/2 206 0.23 124 [ 0.60]
'Elixir.Bunch.Access':get_and_update_in/3 227 0.23 125 [ 0.55]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions/4-fun-1-'/1 433 0.23 126 [ 0.29]
lists:reverse/1 433 0.24 129 [ 0.30]
'Elixir.Enum':drop_while/2 433 0.24 131 [ 0.30]
'Elixir.Enum':split_while/2 433 0.24 131 [ 0.30]
'Elixir.Kernel':'-put_in/3-fun-0-'/2 454 0.25 136 [ 0.30]
'Elixir.Bunch.Enum':try_reduce_while/3 206 0.26 138 [ 0.67]
'Elixir.Membrane.WebRTC.TrackFilter':handle_process_list/4 206 0.26 139 [ 0.67]
gen_server:handle_msg/6 227 0.26 140 [ 0.62]
'Elixir.Membrane.Core.Element.ActionHandler':'-handle_actions (overridable 1)/4-fun-0-'/4 433 0.27 143 [ 0.33]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment