membrane_rtc_engine_hls

Build log

nerves_system_x86_64

membrane_rtc_engine_hls 0.10.0 · fail · run membrane_rtc_engine_hls-0.10.0-1790995953968
1859 of 1859 lines
1Resolving Hex dependencies...2Resolution completed in 0.466s3Unchanged:4  bimap 1.3.05  bunch 1.6.46  bunch_native 0.5.27  bundlex 1.5.88  circular_buffer 1.1.09  coerce 1.0.210  crc 0.11.011  elixir_make 0.10.012  elixir_uuid 1.2.113  ex_dtls 0.18.114  ex_ice 0.13.015  ex_libsrtp 0.7.416  ex_rtcp 0.4.217  ex_rtp 0.4.118  ex_sdp 1.3.019  ex_stun 0.2.120  ex_turn 0.2.321  ex_webrtc 0.15.122  finch 0.24.023  fishjam_protos 0.4.024  heap 2.0.225  hpax 1.1.026  interactive_cmd 0.1.427  jason 1.4.528  logger_backends 1.0.129  membrane_aac_fdk_plugin 0.18.1530  membrane_aac_format 0.8.131  membrane_aac_plugin 0.18.232  membrane_cmaf_format 0.7.233  membrane_common_c 0.16.234  membrane_core 1.2.735  membrane_file_plugin 0.17.536  membrane_funnel_plugin 0.9.237  membrane_h264_ffmpeg_plugin 0.31.338  membrane_h264_format 0.6.139  membrane_h265_format 0.2.040  membrane_h26x_plugin 0.10.941  membrane_http_adaptive_stream_plugin 0.18.542  membrane_mp4_format 0.8.143  membrane_mp4_plugin 0.35.3 VULNERABLE!44    EEF-CVE-2026-53423 (MEDIUM)45    aka: CVE-2026-53423, GHSA-43hj-fxwj-49qw46    Unauthenticated denial-of-service via BEAM atom table exhaustion in membrane_mp4_plugin47    https://osv.dev/vulnerability/EEF-CVE-2026-5342348  membrane_opus_format 0.3.249  membrane_opus_plugin 0.20.850  membrane_precompiled_dependency_provider 0.2.451  membrane_raw_audio_format 0.12.352  membrane_raw_video_format 0.3.053  membrane_rtc_engine 0.25.054  membrane_rtc_engine_ex_webrtc 0.2.055  membrane_rtc_engine_hls 0.10.056  membrane_rtp_format 0.10.057  membrane_rtp_h264_plugin 0.20.258  membrane_rtp_plugin 0.30.059  membrane_rtp_vp8_plugin 0.9.460  membrane_tee_plugin 0.12.061  membrane_telemetry_metrics 0.1.362  membrane_timestamp_queue 0.2.363  membrane_vp8_format 0.5.164  mime 2.0.765  mint 1.11.066  nerves 2.0.0-pre.267  nerves_discovery 0.1.568  nerves_logging 0.2.469  nerves_runtime 0.13.1370  nerves_system_bbb 2.30.271  nerves_system_br 1.34.472  nerves_system_mangopi_mq_pro 0.17.273  nerves_system_qemu_aarch64 0.4.274  nerves_system_rpi0 2.1.275  nerves_system_rpi4 2.1.276  nerves_system_rpi5 2.1.277  nerves_system_trellis 0.5.078  nerves_system_x86_64 1.34.279  nerves_toolchain_aarch64_nerves_linux_gnu 15.3.180  nerves_toolchain_armv6_nerves_linux_gnueabihf 15.3.181  nerves_toolchain_armv7_nerves_linux_gnueabihf 15.3.182  nerves_toolchain_riscv64_nerves_linux_gnu 15.3.183  nerves_toolchain_x86_64_nerves_linux_musl 15.3.184  nerves_uevent 0.1.785  nimble_options 1.1.186  nimble_pool 1.1.087  numbers 5.2.588  property_table 0.3.489  protobuf 0.15.0 VULNERABLE!90    GHSA-rv48-qqj5-crxg (HIGH)91    aka: CVE-2026-5445192    Protobuf: Unbounded recursion depth in embedded-message decoding93    https://osv.dev/vulnerability/GHSA-rv48-qqj5-crxg94  qex 0.5.295  ratio 3.0.296  req 0.7.497  ring_logger 0.11.798  shmex 0.5.299  statistics 0.6.3100  tablet 0.3.3101  telemetry 1.4.2102  telemetry_metrics 1.2.0103  toolshed 0.5.0104  uboot_env 1.0.2105  unifex 1.1.2106  zarex 1.0.6107* Getting membrane_rtc_engine_hls (Hex package)108* Getting nerves (Hex package)109* Getting ring_logger (Hex package)110* Getting toolshed (Hex package)111* Getting nerves_runtime (Hex package)112* Getting nerves_system_bbb (Hex package)113* Getting nerves_system_mangopi_mq_pro (Hex package)114* Getting nerves_system_qemu_aarch64 (Hex package)115* Getting nerves_system_rpi0 (Hex package)116* Getting nerves_system_rpi4 (Hex package)117* Getting nerves_system_rpi5 (Hex package)118* Getting nerves_system_trellis (Hex package)119* Getting nerves_system_x86_64 (Hex package)120* Getting nerves_system_br (Hex package)121* Getting nerves_toolchain_x86_64_nerves_linux_musl (Hex package)122* Getting nerves_toolchain_armv7_nerves_linux_gnueabihf (Hex package)123* Getting nerves_toolchain_aarch64_nerves_linux_gnu (Hex package)124* Getting nerves_toolchain_armv6_nerves_linux_gnueabihf (Hex package)125* Getting nerves_toolchain_riscv64_nerves_linux_gnu (Hex package)126* Getting nerves_logging (Hex package)127* Getting nerves_uevent (Hex package)128* Getting uboot_env (Hex package)129* Getting elixir_make (Hex package)130* Getting property_table (Hex package)131* Getting circular_buffer (Hex package)132* Getting interactive_cmd (Hex package)133* Getting nerves_discovery (Hex package)134* Getting tablet (Hex package)135* Getting membrane_aac_fdk_plugin (Hex package)136* Getting membrane_aac_plugin (Hex package)137* Getting membrane_core (Hex package)138* Getting membrane_h264_ffmpeg_plugin (Hex package)139* Getting membrane_h26x_plugin (Hex package)140* Getting membrane_http_adaptive_stream_plugin (Hex package)141* Getting membrane_opus_plugin (Hex package)142* Getting membrane_raw_audio_format (Hex package)143* Getting membrane_raw_video_format (Hex package)144* Getting membrane_rtc_engine (Hex package)145* Getting membrane_rtc_engine_ex_webrtc (Hex package)146* Getting elixir_uuid (Hex package)147* Getting ex_sdp (Hex package)148* Getting ex_webrtc (Hex package)149* Getting fishjam_protos (Hex package)150* Getting jason (Hex package)151* Getting membrane_rtp_format (Hex package)152* Getting membrane_rtp_h264_plugin (Hex package)153* Getting membrane_rtp_plugin (Hex package)154* Getting membrane_rtp_vp8_plugin (Hex package)155* Getting membrane_vp8_format (Hex package)156* Getting bimap (Hex package)157* Getting bunch (Hex package)158* Getting ex_rtcp (Hex package)159* Getting ex_rtp (Hex package)160* Getting heap (Hex package)161* Getting membrane_funnel_plugin (Hex package)162* Getting membrane_telemetry_metrics (Hex package)163* Getting qex (Hex package)164* Getting telemetry (Hex package)165* Getting telemetry_metrics (Hex package)166* Getting membrane_h264_format (Hex package)167* Getting protobuf (Hex package)168* Getting crc (Hex package)169* Getting ex_dtls (Hex package)170* Getting ex_ice (Hex package)171* Getting ex_libsrtp (Hex package)172* Getting bundlex (Hex package)173* Getting membrane_precompiled_dependency_provider (Hex package)174* Getting unifex (Hex package)175* Getting shmex (Hex package)176* Getting bunch_native (Hex package)177* Getting req (Hex package)178* Getting finch (Hex package)179* Getting mime (Hex package)180* Getting mint (Hex package)181* Getting nimble_options (Hex package)182* Getting nimble_pool (Hex package)183* Getting hpax (Hex package)184* Getting zarex (Hex package)185* Getting ex_stun (Hex package)186* Getting ex_turn (Hex package)187* Getting statistics (Hex package)188* Getting membrane_common_c (Hex package)189* Getting membrane_opus_format (Hex package)190* Getting membrane_mp4_plugin (Hex package)191* Getting membrane_tee_plugin (Hex package)192* Getting membrane_aac_format (Hex package)193* Getting membrane_cmaf_format (Hex package)194* Getting membrane_file_plugin (Hex package)195* Getting membrane_h265_format (Hex package)196* Getting membrane_mp4_format (Hex package)197* Getting membrane_timestamp_queue (Hex package)198* Getting logger_backends (Hex package)199* Getting ratio (Hex package)200* Getting numbers (Hex package)201* Getting coerce (Hex package)202Found packages with security advisories, see above for details203==> membrane_mp4_format204Compiling 1 file (.ex)205Generated membrane_mp4_format app206==> ratio207Compiling 5 files (.ex)208     warning: <|> is deprecated. Use another pipe-like operator209     │210 123 │   def numerator <|> denominator211     │                 ~212     │213     └─ lib/ratio.ex:123:17214215     warning: <|> is deprecated. Use another pipe-like operator216     │217 125 │   def _numerator <|> 0 do218     │                  ~219     │220     └─ lib/ratio.ex:125:18221222     warning: <|> is deprecated. Use another pipe-like operator223     │224 129 │   def numerator <|> denominator when is_integer(numerator) and is_integer(denominator) do225     │                 ~226     │227     └─ lib/ratio.ex:129:17228229     warning: <|> is deprecated. Use another pipe-like operator230     │231 133 │   def numerator <|> denominator when is_float(numerator) do232     │                 ~233     │234     └─ lib/ratio.ex:133:17235236     warning: <|> is deprecated. Use another pipe-like operator237     │238 137 │   def numerator <|> denominator when is_float(denominator) do239     │                 ~240     │241     └─ lib/ratio.ex:137:17242243     warning: <|> is deprecated. Use another pipe-like operator244     │245 141 │   def (numerator = %Ratio{}) <|> (denominator = %Ratio{}) do246     │                              ~247     │248     └─ lib/ratio.ex:141:30249250     warning: <|> is deprecated. Use another pipe-like operator251     │252 146 │     def (numerator = %Decimal{}) <|> (denominator = %Decimal{}) do253     │                                  ~254     │255     └─ lib/ratio.ex:146:34256257     warning: <|> is deprecated. Use another pipe-like operator258     │259 151 │     def (numerator = %Decimal{}) <|> denominator when is_float(denominator) do260     │                                  ~261     │262     └─ lib/ratio.ex:151:34263264     warning: <|> is deprecated. Use another pipe-like operator265     │266 156 │     def numerator <|> (denominator = %Decimal{}) when is_float(numerator) do267     │                   ~268     │269     └─ lib/ratio.ex:156:19270271     warning: <|> is deprecated. Use another pipe-like operator272     │273 161 │     def (numerator = %Decimal{}) <|> denominator when is_integer(denominator) do274     │                                  ~275     │276     └─ lib/ratio.ex:161:34277278     warning: <|> is deprecated. Use another pipe-like operator279     │280 166 │     def numerator <|> (denominator = %Decimal{}) when is_integer(numerator) do281     │                   ~282     │283     └─ lib/ratio.ex:166:19284285     warning: <|> is deprecated. Use another pipe-like operator286     │287 171 │   def numerator <|> (denominator = %Ratio{}) when is_integer(numerator) do288     │                 ~289     │290     └─ lib/ratio.ex:171:17291292     warning: <|> is deprecated. Use another pipe-like operator293     │294 175 │   def (numerator = %Ratio{}) <|> denominator when is_integer(denominator) do295     │                              ~296     │297     └─ lib/ratio.ex:175:30298299     warning: <|> is deprecated. Use another pipe-like operator300     │301 205 │       <|> Ratio.DecimalConversion.decimal_to_rational(denominator)302     │       ~303     │304     └─ lib/ratio.ex:205:7305306     warning: <|> is deprecated. Use another pipe-like operator307     │308 209 │       numerator <|> Ratio.DecimalConversion.decimal_to_rational(denominator)309     │                 ~310     │311     └─ lib/ratio.ex:209:17312313     warning: <|> is deprecated. Use another pipe-like operator314     │315 214 │     numerator <|> denominator316     │               ~317     │318     └─ lib/ratio.ex:214:15319320     warning: <|> is deprecated. Use another pipe-like operator321     │322 228 │     do: Kernel.abs(numerator) <|> denominator323     │                               ~324     │325     └─ lib/ratio.ex:228:31326327     warning: <|> is deprecated. Use another pipe-like operator328     │329 271 │     Kernel.+(a, c) <|> lcm330     │                    ~331     │332     └─ lib/ratio.ex:271:20333334     warning: <|> is deprecated. Use another pipe-like operator335     │336 275 │     Kernel.+(a * d, c * b) <|> (b * d)337     │                            ~338     │339     └─ lib/ratio.ex:275:28340341     warning: <|> is deprecated. Use another pipe-like operator342     │343 309 │     Kernel.*(numerator1, numerator2) <|> Kernel.*(denominator1, denominator2)344     │                                      ~345     │346     └─ lib/ratio.ex:309:38347348     warning: <|> is deprecated. Use another pipe-like operator349     │350 327 │     Kernel.*(numerator1, denominator2) <|> Kernel.*(denominator1, numerator2)351     │                                        ~352     │353     └─ lib/ratio.ex:327:40354355     warning: <|> is deprecated. Use another pipe-like operator356     │357 434 │   defp do_pow(x, n, y) when Kernel.<(n, 0), do: do_pow(1 <|> x, Kernel.-(n), y)358     │                                                          ~359     │360     └─ lib/ratio.ex:434:58361362    warning: <|> is deprecated. Use another pipe-like operator363    │364 21 │     numerator <|> denominator365    │               ~366    │367    └─ lib/ratio/float_conversion.ex:21:15368369    warning: Ratio.DecimalConversion.decimal_to_rational/1 is undefined (module Ratio.DecimalConversion is not available or is yet to be defined)370    │371 17 │     {ratio, Ratio.DecimalConversion.decimal_to_rational(decimal)}372    │                                     ~373    │374    └─ lib/ratio/coerce.ex:17:37: Coerce.Implementations.Ratio.Decimal.coerce/2375376both :extra_applications and :applications was found in your mix.exs. You most likely want to remove the :applications key, as all applications are derived from your dependencies377Generated ratio app378==> membrane_raw_video_format379Compiling 2 files (.ex)380Generated membrane_raw_video_format app381==> membrane_cmaf_format382Compiling 1 file (.ex)383Generated membrane_cmaf_format app384==> membrane_core385Compiling 139 files (.ex)386    warning: unused require Membrane.Core.Message (convert it to an alias instead)387    │388  7 │   require Membrane.Core.Message, as: Message389    │   ~390    │391    └─ lib/membrane/core/parent/diamond_detection_controller.ex:7:3392393    warning: unused require Membrane.Core.Component394    │395  5 │   require Membrane.Core.Component396    │   ~397    │398    └─ lib/membrane/core/child/lifecycle_controller.ex:5:3399400    warning: unused require Membrane.Core.Component401    │402  7 │   require Membrane.Core.Component403    │   ~404    │405    └─ lib/membrane/core/timer_controller.ex:7:3406407     warning: unused require Membrane.Core.Helper.FastMap408     │409 138 │     require FastMap410     │     ~411     │412     └─ lib/membrane/core/child/pad_model.ex:138:5413414    warning: unused require Membrane.Core.Child.PadModel415    │416  7 │   require Membrane.Core.Child.PadModel417    │   ~418    │419    └─ lib/membrane/core/child/pad_controller.ex:7:3420421    warning: unused require Membrane.Core.Message (convert it to an alias instead)422    │423 19 │   require Membrane.Core.Message, as: Message424    │   ~425    │426    └─ lib/membrane/core/element/manual_flow_controller.ex:19:3427428    warning: unused require Membrane.Logger429    │430 20 │   require Membrane.Logger431    │   ~432    │433    └─ lib/membrane/core/element/manual_flow_controller.ex:20:3434435    warning: unused require Membrane.Core.Component436    │437 23 │   require Membrane.Core.Component438    │   ~439    │440    └─ lib/membrane/core/parent/child_life_controller.ex:23:3441442    warning: unused require Membrane.Core.Message (convert it to an alias instead)443    │444 24 │   require Membrane.Core.Message, as: Message445    │   ~446    │447    └─ lib/membrane/core/parent/child_life_controller.ex:24:3448449    warning: unused require Membrane.Core.Component450    │451  9 │   require Membrane.Core.Component452    │   ~453    │454    └─ lib/membrane/core/parent/child_life_controller/startup_utils.ex:9:3455456    warning: unused require Membrane.Core.Component457    │458 18 │   require Membrane.Core.Component459    │   ~460    │461    └─ lib/membrane/core/parent/lifecycle_controller.ex:18:3462463    warning: unused require Membrane.Core.Message464    │465 19 │   require Membrane.Core.Message466    │   ~467    │468    └─ lib/membrane/core/parent/lifecycle_controller.ex:19:3469470    warning: unused require Membrane.Core.Message471    │472 20 │   require Membrane.Core.Message473    │   ~474    │475    └─ lib/membrane/core/element/lifecycle_controller.ex:20:3476477    warning: unused require Membrane.Core.Message478    │479  7 │   require Membrane.Core.Message480    │   ~481    │482    └─ lib/membrane/core/lifecycle_controller.ex:7:3483484     warning: the variable "at_pos" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator485     │486 103 │     <<part1::binary-size(at_pos), part2::binary>> = payload487     │                          ~488     │489     └─ lib/membrane/payload.ex:103:26: Membrane.Payload.BitString.split_at/2490491     warning: the variable "bytes" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator492     │493 116 │     <<_dropped::binary-size(bytes), rest::binary>> = payload494     │                             ~495     │496     └─ lib/membrane/payload.ex:116:29: Membrane.Payload.BitString.drop/2497498    warning: unused require Membrane.Core.Message (convert it to an alias instead)499    │500 11 │   require Membrane.Core.Message, as: Message501    │   ~502    │503    └─ lib/membrane/core/element/atomic_demand.ex:11:3504505    warning: unused require Membrane.Pad (convert it to an alias instead)506    │507 13 │   require Membrane.Pad, as: Pad508    │   ~509    │510    └─ lib/membrane/core/element/atomic_demand.ex:13:3511512    warning: unused require Membrane.Core.Message513    │514 20 │   require Membrane.Core.Message515    │   ~516    │517    └─ lib/membrane/bin.ex:20:3518519    warning: unused require Membrane.Core.Message (convert it to an alias instead)520    │521 24 │   require Membrane.Core.Message, as: Message522    │   ~523    │524    └─ lib/membrane/core/element/effective_flow_controller.ex:24:3525526    warning: unused require Membrane.Pad (convert it to an alias instead)527    │528 26 │   require Membrane.Pad, as: Pad529    │   ~530    │531    └─ lib/membrane/core/element/effective_flow_controller.ex:26:3532533    warning: unused require Membrane.Core.Message (convert it to an alias instead)534    │535 26 │   require Membrane.Core.Message, as: Message536    │   ~537    │538    └─ lib/membrane/core/element/pad_controller.ex:26:3539540    warning: unused require Membrane.Pad (convert it to an alias instead)541    │542 29 │   require Membrane.Pad, as: Pad543    │   ~544    │545    └─ lib/membrane/core/element/pad_controller.ex:29:3546547    warning: unused require Membrane.Pad (convert it to an alias instead)548    │549 18 │   require Membrane.Pad, as: Pad550    │   ~551    │552    └─ lib/membrane/core/element/auto_flow_controller.ex:18:3553554    warning: unused require Membrane.Pad555    │556 15 │   require Membrane.Pad557    │   ~558    │559    └─ lib/membrane/core/legacy_telemetry.ex:15:3560561    warning: unused require Membrane.Core.Component562    │563 14 │   require Membrane.Core.Component564    │   ~565    │566    └─ lib/membrane/core/pipeline.ex:14:3567568    warning: unused require Membrane.Pad (convert it to an alias instead)569    │570  6 │     require Membrane.Pad, as: Pad571    │     ~572    │573    └─ lib/membrane/core/element/diamond_detection_controller/path_in_grapth.ex:6:5574575    warning: unused require Membrane.Pad576    │577 11 │   require Membrane.Pad578    │   ~579    │580    └─ lib/membrane/core/child/pad_spec_handler.ex:11:3581582    warning: unused require Membrane.Core.Message (convert it to an alias instead)583    │584 63 │   require Membrane.Core.Message, as: Message585    │   ~586    │587    └─ lib/membrane/pipeline.ex:63:3588589    warning: unused require Membrane.Logger590    │591 81 │   require Membrane.Logger592    │   ~593    │594    └─ lib/membrane/core/element/diamond_detection_controller.ex:81:3595596    warning: unused require Membrane.Pad (convert it to an alias instead)597    │598 82 │   require Membrane.Pad, as: Pad599    │   ~600    │601    └─ lib/membrane/core/element/diamond_detection_controller.ex:82:3602603    warning: unused require Membrane.Core.Telemetry (convert it to an alias instead)604    │605 13 │   require Membrane.Core.Telemetry, as: Telemetry606    │   ~607    │608    └─ lib/membrane/core/callback_handler.ex:13:3609610    warning: unused require Membrane.Logger611    │612 11 │   require Membrane.Logger613    │   ~614    │615    └─ lib/membrane/core/pipeline/action_handler.ex:11:3616617    warning: unused require Membrane.Core.Telemetry (convert it to an alias instead)618    │619 42 │   require Membrane.Core.Telemetry, as: Telemetry620    │   ~621    │622    └─ lib/membrane/core/element.ex:42:3623624    warning: unused require Membrane.Core.Message625    │626 11 │   require Message627    │   ~628    │629    └─ lib/membrane/core/bin/action_handler.ex:11:3630631    warning: unused require Membrane.Core.Telemetry (convert it to an alias instead)632    │633 27 │   require Membrane.Core.Telemetry, as: Telemetry634    │   ~635    │636    └─ lib/membrane/core/element/buffer_controller.ex:27:3637638    warning: unused require Membrane.Core.Message (convert it to an alias instead)639    │640 34 │   require Membrane.Core.Message, as: Message641    │   ~642    │643    └─ lib/membrane/core/element/action_handler.ex:34:3644645    warning: unused require Membrane.Core.Telemetry (convert it to an alias instead)646    │647 36 │   require Membrane.Core.Telemetry, as: Telemetry648    │   ~649    │650    └─ lib/membrane/core/element/action_handler.ex:36:3651652    warning: unused require Membrane.Core.Message653    │654 24 │   require Membrane.Core.Message655    │   ~656    │657    └─ lib/membrane/core/element/event_controller.ex:24:3658659    warning: unused require Membrane.Core.Telemetry660    │661 25 │   require Membrane.Core.Telemetry662    │   ~663    │664    └─ lib/membrane/core/element/event_controller.ex:25:3665666    warning: unused require Membrane.Core.Telemetry667    │668 23 │   require Membrane.Core.Telemetry669    │   ~670    │671    └─ lib/membrane/core/element/stream_format_controller.ex:23:3672673    warning: unused require Membrane.Core.Message674    │675 24 │   require Membrane.Core.Message676    │   ~677    │678    └─ lib/membrane/core/parent/child_life_controller/link_utils.ex:24:3679680    warning: unused require Membrane.Core.Telemetry681    │682 25 │   require Membrane.Core.Telemetry683    │   ~684    │685    └─ lib/membrane/core/parent/child_life_controller/link_utils.ex:25:3686687    warning: unused require Membrane.Core.Message688    │689 90 │   require Membrane.Core.Message690    │   ~691    │692    └─ lib/membrane/testing/pipeline.ex:90:3693694     warning: the following clause cannot match because the previous clauses already matched all possible values:695696         _ ->697698     it attempts to match on the result of:699700         handler_reported?(component_type, callback)701702     which has the already matched type:703704         dynamic(false)705706     type warning found at:707     │708 190 │     if handler_reported?(component_type, callback) do709     │     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~710     │711     └─ lib/membrane/core/telemetry.ex:190: Membrane.Core.Telemetry.track_callback_handler/5712713     warning: the right-hand side of || will never be executed:714715         input_demand_unit || ...716717     because the left-hand side always evaluates to:718719         dynamic(not false and not nil)720721     where "input_demand_unit" was given the type:722723         # type: dynamic(not false and not nil)724         # from: lib/membrane/core/element/pad_controller.ex:140:45725         {output_demand_unit, input_demand_unit} = resolve_demand_units(output_pad_info, pad_info)726727     type warning found at:728     │729 155 │         receiver_demand_unit: input_demand_unit || :buffers,730     │         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~731     │732     └─ lib/membrane/core/element/pad_controller.ex:155: Membrane.Core.Element.PadController.do_handle_link/6733734     warning: the following clause is redundant:735736         {[], next_state} ->737738     previous clauses have already matched on the following types:739740         {empty_list() or non_empty_list(term(), term()), term()}741742     where "next_state" was given the type:743744         # type: dynamic()745         # from: lib/membrane/filter_aggregator.ex746         {[], next_state}747748     type warning found at:749     │750 186 │       {[], next_state} ->751     │                        ~752     │753     └─ lib/membrane/filter_aggregator.ex:186:24: Membrane.FilterAggregator.perform_actions/5754755Generated membrane_core app756==> membrane_aac_plugin757Compiling 6 files (.ex)758    warning: the variable "size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator759    │760 89 │       <<frame::binary-size(size), rest::binary>> -> {:frame, frame, rest}761    │                            ~762    │763    └─ lib/membrane/aac/parser/adts.ex:89:28: Membrane.AAC.Parser.ADTS.extract_frame/4764765    warning: the variable "adts_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator766    │767 98 │       <<_adts::binary-size(adts_size), frame::binary-size(frame_size), rest::binary>> ->768    │                            ~769    │770    └─ lib/membrane/aac/parser/adts.ex:98:28: Membrane.AAC.Parser.ADTS.extract_frame/4771772    warning: the variable "frame_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator773    │774 98 │       <<_adts::binary-size(adts_size), frame::binary-size(frame_size), rest::binary>> ->775    │                                                           ~776    │777    └─ lib/membrane/aac/parser/adts.ex:98:59: Membrane.AAC.Parser.ADTS.extract_frame/4778779    warning: the variable "custom_frequency_length" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator780    │781 32 │     <<custom_frequency::integer-size(custom_frequency_length), channel_config_id::4,782    │                                      ~783    │784    └─ lib/membrane/aac/parser/audio_specific_config.ex:32:38: Membrane.AAC.Parser.AudioSpecificConfig.parse_audio_specific_config/1785786    warning: the variable "url_length" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator787    │788 60 │         <<_url::binary-size(url_length), rest::binary>> = rest789    │                             ~790    │791    └─ lib/membrane/aac/parser/esds.ex:60:29: Membrane.AAC.Parser.Esds.parse_esds/1792793    warning: the variable "payload_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator794    │795 92 │         <<payload::binary-size(payload_size), rest::binary>> = rest796    │                                ~797    │798    └─ lib/membrane/aac/parser/esds.ex:92:32: Membrane.AAC.Parser.Esds.unpack_esds_section/2799800    warning: the variable "payload_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator801    │802 96 │         <<payload::binary-size(payload_size), rest::binary>> = rest803    │                                ~804    │805    └─ lib/membrane/aac/parser/esds.ex:96:32: Membrane.AAC.Parser.Esds.unpack_esds_section/2806807     warning: a struct for Membrane.Buffer is expected on struct update:808809         %Membrane.Buffer{810           buffer811           | payload:812               Membrane.AAC.Parser.ADTS.payload_to_adts(buffer.payload, ctx.pads.output.stream_format)813         }814815     but got type:816817         dynamic(%{..., pts: integer()})818819     where "buffer" was given the type:820821         # type: dynamic(%{..., pts: integer()})822         # from: lib/membrane/aac/parser.ex:111:12823         buffer = %{buffer | pts: round(Ratio.to_float(timestamp))}824825     when defining the variable "buffer", you must also pattern match on "%Membrane.Buffer{}"826827     type warning found at:828     │829 116 │           %Buffer{830     │           ~831     │832     └─ lib/membrane/aac/parser.ex:116:11: Membrane.AAC.Parser.handle_buffer/4833834    warning: a struct for Membrane.AAC.Filler.State is expected on struct update:835836        %Membrane.AAC.Filler.State{state | frame_duration: new_duration, channels: stream_format.channels}837838    but got type:839840        dynamic()841842    where "state" was given the type:843844        # type: dynamic()845        # from: lib/membrane/aac/filler.ex:71:57846        state847848    when defining the variable "state", you must also pattern match on "%Membrane.AAC.Filler.State{}"849850    type warning found at:851    │852 75 │     state = %State{state | frame_duration: new_duration, channels: stream_format.channels}853    │             ~854    │855    └─ lib/membrane/aac/filler.ex:75:13: Membrane.AAC.Filler.handle_stream_format/4856857    warning: a struct for Membrane.Buffer is expected on struct update:858859        %Membrane.Buffer{860          buffer861          | payload: silent_frame_payload,862            pts: round(timestamp),863            dts: round(timestamp)864        }865866    but got type:867868        dynamic(%{..., pts: term()})869870    where "buffer" was given the type:871872        # type: dynamic(%{..., pts: term()})873        # from: lib/membrane/aac/filler.ex:84:32874        buffer.pts875876    when defining the variable "buffer", you must also pattern match on "%Membrane.Buffer{}"877878    type warning found at:879    │880 96 │         %Buffer{881    │         ~882    │883    └─ lib/membrane/aac/filler.ex:96:9: Membrane.AAC.Filler.handle_buffer/4884885Generated membrane_aac_plugin app886==> membrane_h26x_plugin887Compiling 31 files (.ex)888Generated membrane_h26x_plugin app889==> membrane_raw_audio_format890Compiling 2 files (.ex)891Generated membrane_raw_audio_format app892==> membrane_rtp_format893Compiling 5 files (.ex)894Generated membrane_rtp_format app895==> membrane_rtp_h264_plugin896Compiling 8 files (.ex)897    warning: the variable "preferred_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator898    │899 37 │       <<header::1-binary, head::binary-size(preferred_size - 1), rest::binary>> ->900    │                                             ~901    │902    └─ lib/rtp_h264/nal_formats/fu.ex:37:45: Membrane.RTP.H264.FU.serialize/2903904    warning: the variable "preferred_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator905    │906 54 │       <<head::binary-size(preferred_size - 2), rest::binary>> when byte_size(rest) > 0 ->907    │                           ~908    │909    └─ lib/rtp_h264/nal_formats/fu.ex:54:27: Membrane.RTP.H264.FU.do_serialize/5910911     warning: the variable "offset" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator912     │913 120 │       <<_x::binary-size(offset), nalu::binary-size(nalu_size), remaining_aus::binary>> = rest914     │                         ~915     │916     └─ lib/rtp_h264/utils.ex:120:25: Membrane.RTP.H264.Utils.check_first_aggregation_unit/3917918     warning: the variable "nalu_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator919     │920 120 │       <<_x::binary-size(offset), nalu::binary-size(nalu_size), remaining_aus::binary>> = rest921     │                                                    ~922     │923     └─ lib/rtp_h264/utils.ex:120:52: Membrane.RTP.H264.Utils.check_first_aggregation_unit/3924925     warning: a struct for Membrane.Buffer is expected on struct update:926927         %Membrane.Buffer{buffer | payload: &1}928929     but got type:930931         dynamic(%{..., payload: term()})932933     where "buffer" was given the type:934935         # type: dynamic(%{..., payload: term()})936         # from: lib/rtp_h264/payloader.ex:187:11937         Membrane.RTP.H264.FU.serialize(938           buffer.payload,939           state.max_payload_size940         )941942     when defining the variable "buffer", you must also pattern match on "%Membrane.Buffer{}"943944     type warning found at:945     │946 188 │     |> Enum.map(&%Buffer{buffer | payload: &1})947     │                  ~948     │949     └─ lib/rtp_h264/payloader.ex:188:18: Membrane.RTP.H264.Payloader.use_fu_a/2950951    warning: a struct for Membrane.RTP.H264.Depayloader.State is expected on struct update:952953        %Membrane.RTP.H264.Depayloader.State{state | parser_acc: nil}954955    but got type:956957        dynamic()958959    where "state" was given the type:960961        # type: dynamic()962        # from: lib/rtp_h264/depayloader.ex:43:43963        state964965    when defining the variable "state", you must also pattern match on "%Membrane.RTP.H264.Depayloader.State{}"966967    type warning found at:968    │969 51 │         {[], %State{state | parser_acc: nil}}970    │              ~971    │972    └─ lib/rtp_h264/depayloader.ex:51:14: Membrane.RTP.H264.Depayloader.handle_buffer/4973974    warning: a struct for Membrane.RTP.H264.FU is expected on struct update:975976        %Membrane.RTP.H264.FU{acc | data: [packet]}977978    but got type:979980        dynamic()981982    where "acc" was given the type:983984        # type: dynamic()985        # from: lib/rtp_h264/nal_formats/fu.ex:73:54986        acc987988    when defining the variable "acc", you must also pattern match on "%Membrane.RTP.H264.FU{}"989990    type warning found at:991    │992 74 │     do: {:incomplete, %__MODULE__{acc | data: [packet]}}993    │                       ~994    │995    └─ lib/rtp_h264/nal_formats/fu.ex:74:23: Membrane.RTP.H264.FU.do_parse/3996997    warning: a struct for Membrane.RTP.H264.Depayloader.State is expected on struct update:998999        %Membrane.RTP.H264.Depayloader.State{state | parser_acc: nil}10001001    but got type:10021003        dynamic()10041005    where "state" was given the type:10061007        # type: dynamic()1008        # from: lib/rtp_h264/depayloader.ex:67:561009        state10101011    when defining the variable "state", you must also pattern match on "%Membrane.RTP.H264.Depayloader.State{}"10121013    type warning found at:1014    │1015 71 │         result = buffer_output(data, buffer, %State{state | parser_acc: nil})1016    │                                              ~1017    │1018    └─ lib/rtp_h264/depayloader.ex:71:46: Membrane.RTP.H264.Depayloader.handle_unit_type/410191020    warning: a struct for Membrane.RTP.H264.Depayloader.State is expected on struct update:10211022        %Membrane.RTP.H264.Depayloader.State{state | parser_acc: fu}10231024    but got type:10251026        dynamic()10271028    where "state" was given the type:10291030        # type: dynamic()1031        # from: lib/rtp_h264/depayloader.ex:67:561032        state10331034    when defining the variable "state", you must also pattern match on "%Membrane.RTP.H264.Depayloader.State{}"10351036    type warning found at:1037    │1038 75 │         result = {[], %State{state | parser_acc: fu}}1039    │                       ~1040    │1041    └─ lib/rtp_h264/depayloader.ex:75:23: Membrane.RTP.H264.Depayloader.handle_unit_type/410421043    warning: a struct for Membrane.Buffer is expected on struct update:10441045        %Membrane.Buffer{buffer | payload: add_prefix(&1)}10461047    but got type:10481049        dynamic()10501051    where "buffer" was given the type:10521053        # type: dynamic()1054        # from: lib/rtp_h264/depayloader.ex:83:511055        buffer10561057    when defining the variable "buffer", you must also pattern match on "%Membrane.Buffer{}"10581059    type warning found at:1060    │1061 85 │       buffers = Enum.map(result, &%Buffer{buffer | payload: add_prefix(&1)})1062    │                                   ~1063    │1064    └─ lib/rtp_h264/depayloader.ex:85:35: Membrane.RTP.H264.Depayloader.handle_unit_type/410651066    warning: a struct for Membrane.Buffer is expected on struct update:10671068        %Membrane.Buffer{buffer | payload: add_prefix(data)}10691070    but got type:10711072        dynamic()10731074    where "buffer" was given the type:10751076        # type: dynamic()1077        # from: lib/rtp_h264/depayloader.ex:95:311078        buffer10791080    when defining the variable "buffer", you must also pattern match on "%Membrane.Buffer{}"10811082    type warning found at:1083    │1084 96 │     [buffer: {:output, %Buffer{buffer | payload: add_prefix(data)}}]1085    │                        ~1086    │1087    └─ lib/rtp_h264/depayloader.ex:96:24: Membrane.RTP.H264.Depayloader.action_from_data/210881089Generated membrane_rtp_h264_plugin app1090==> membrane_rtp_vp8_plugin1091Compiling 6 files (.ex)1092     warning: a struct for Membrane.RTP.VP8.PayloadDescriptor is expected on struct update:10931094         %Membrane.RTP.VP8.PayloadDescriptor{descriptor_acc | i: i, l: l, t: t, k: k}10951096     but got type:10971098         dynamic()10991100     where "descriptor_acc" was given the type:11011102         # type: dynamic()1103         # from: lib/membrane_rtp_vp8/payload_descriptor.ex:130:101104         descriptor_acc11051106     when defining the variable "descriptor_acc", you must also pattern match on "%Membrane.RTP.VP8.PayloadDescriptor{}"11071108     type warning found at:1109     │1110 136 │     {:ok, {%__MODULE__{descriptor_acc | i: i, l: l, t: t, k: k}, rest}}1111     │            ~1112     │1113     └─ lib/membrane_rtp_vp8/payload_descriptor.ex:136:12: Membrane.RTP.VP8.PayloadDescriptor.get_extended_control_bits/211141115    warning: a struct for Membrane.RTP.VP8.Depayloader.State is expected on struct update:11161117        %Membrane.RTP.VP8.Depayloader.State{1118          state1119          | frame_acc: %Membrane.RTP.VP8.Frame{fragments: [], last_seq_num: nil, last_timestamp: nil}1120        }11211122    but got type:11231124        dynamic()11251126    where "state" was given the type:11271128        # type: dynamic()1129        # from: lib/membrane_rtp_vp8/depayloader.ex:40:601130        state11311132    when defining the variable "state", you must also pattern match on "%Membrane.RTP.VP8.Depayloader.State{}"11331134    type warning found at:1135    │1136 41 │     do: {[forward: event], %State{state | frame_acc: %Frame{}}}1137    │                            ~1138    │1139    └─ lib/membrane_rtp_vp8/depayloader.ex:41:28: Membrane.RTP.VP8.Depayloader.handle_event/411401141     warning: a struct for Membrane.RTP.VP8.PayloadDescriptor is expected on struct update:11421143         %Membrane.RTP.VP8.PayloadDescriptor{descriptor_acc | m: 0, picture_id: picture_id}11441145     but got type:11461147         dynamic()11481149     where "descriptor_acc" was given the type:11501151         # type: dynamic()1152         # from: lib/membrane_rtp_vp8/payload_descriptor.ex:143:231153         descriptor_acc11541155     when defining the variable "descriptor_acc", you must also pattern match on "%Membrane.RTP.VP8.PayloadDescriptor{}"11561157     type warning found at:1158     │1159 145 │        do: {:ok, {%__MODULE__{descriptor_acc | m: 0, picture_id: picture_id}, rest}}1160     │                   ~1161     │1162     └─ lib/membrane_rtp_vp8/payload_descriptor.ex:145:19: Membrane.RTP.VP8.PayloadDescriptor.get_picture_id/211631164    warning: a struct for Membrane.Buffer is expected on struct update:11651166        %Membrane.Buffer{state.first_buffer | payload: frame}11671168    but got type:11691170        dynamic()11711172    where "state" was given the types:11731174        # type: dynamic(not %Membrane.RTP.VP8.Depayloader.State{first_buffer: nil})1175        # from: lib/membrane_rtp_vp8/depayloader.ex:52:421176        state11771178        # type: dynamic(1179          %{..., frame_acc: %{..., fragments: term()}} and1180            not %Membrane.RTP.VP8.Depayloader.State{first_buffer: nil}1181        )1182        # from: lib/membrane_rtp_vp8/depayloader.ex:53:271183        Membrane.RTP.VP8.Frame.flush(state.frame_acc)11841185        # type: dynamic(1186          %{..., first_buffer: term(), frame_acc: %{..., fragments: term()}} and1187            not %Membrane.RTP.VP8.Depayloader.State{first_buffer: nil}1188        )1189        # from: lib/membrane_rtp_vp8/depayloader.ex:56:261190        %Membrane.Buffer{...}11911192    you must assign "state.first_buffer" to variable and pattern match on "%Membrane.Buffer{}"11931194    type warning found at:1195    │1196 56 │        buffer: {:output, %Buffer{state.first_buffer | payload: frame}},1197    │                          ~1198    │1199    └─ lib/membrane_rtp_vp8/depayloader.ex:56:26: Membrane.RTP.VP8.Depayloader.handle_end_of_stream/312001201     warning: a struct for Membrane.RTP.VP8.PayloadDescriptor is expected on struct update:12021203         %Membrane.RTP.VP8.PayloadDescriptor{descriptor_acc | m: 1, picture_id: picture_id}12041205     but got type:12061207         dynamic()12081209     where "descriptor_acc" was given the type:12101211         # type: dynamic()1212         # from: lib/membrane_rtp_vp8/payload_descriptor.ex:147:231213         descriptor_acc12141215     when defining the variable "descriptor_acc", you must also pattern match on "%Membrane.RTP.VP8.PayloadDescriptor{}"12161217     type warning found at:1218     │1219 149 │        do: {:ok, {%__MODULE__{descriptor_acc | m: 1, picture_id: picture_id}, rest}}1220     │                   ~1221     │1222     └─ lib/membrane_rtp_vp8/payload_descriptor.ex:149:19: Membrane.RTP.VP8.PayloadDescriptor.get_picture_id/212231224    warning: a struct for Membrane.RTP.VP8.Depayloader.State is expected on struct update:12251226        %Membrane.RTP.VP8.Depayloader.State{state | frame_acc: acc}12271228    but got type:12291230        dynamic(%{..., frame_acc: term()})12311232    where "state" was given the type:12331234        # type: dynamic(%{..., frame_acc: term()})1235        # from: lib/membrane_rtp_vp8/depayloader.ex:76:161236        Membrane.RTP.VP8.Frame.parse(buffer, state.frame_acc)12371238    when defining the variable "state", you must also pattern match on "%Membrane.RTP.VP8.Depayloader.State{}"12391240    type warning found at:1241    │1242 78 │         {:ok, [], %State{state | frame_acc: acc}}1243    │                   ~1244    │1245    └─ lib/membrane_rtp_vp8/depayloader.ex:78:19: Membrane.RTP.VP8.Depayloader.parse_buffer/212461247    warning: a struct for Membrane.RTP.VP8.Depayloader.State is expected on struct update:12481249        %Membrane.RTP.VP8.Depayloader.State{state | frame_acc: acc, first_buffer: buffer}12501251    but got type:12521253        dynamic(%{..., first_buffer: %{..., payload: term()}, frame_acc: term()})12541255    where "state" was given the types:12561257        # type: dynamic(%{..., frame_acc: term()})1258        # from: lib/membrane_rtp_vp8/depayloader.ex:76:161259        Membrane.RTP.VP8.Frame.parse(buffer, state.frame_acc)12601261        # type: dynamic(%{..., first_buffer: %{..., payload: term()}, frame_acc: term()})1262        # from: lib/membrane_rtp_vp8/depayloader.ex:81:91263        {:ok, [buffer: {:output, %{state.first_buffer | payload: frame}}],1264         %Membrane.RTP.VP8.Depayloader.State{...}}12651266    when defining the variable "state", you must also pattern match on "%Membrane.RTP.VP8.Depayloader.State{}"12671268    type warning found at:1269    │1270 82 │          %State{state | frame_acc: acc, first_buffer: buffer}}1271    │          ~1272    │1273    └─ lib/membrane_rtp_vp8/depayloader.ex:82:10: Membrane.RTP.VP8.Depayloader.parse_buffer/212741275     warning: a struct for Membrane.RTP.VP8.PayloadDescriptor is expected on struct update:12761277         %Membrane.RTP.VP8.PayloadDescriptor{descriptor_acc | tl0picidx: tl0picidx}12781279     but got type:12801281         dynamic()12821283     where "descriptor_acc" was given the type:12841285         # type: dynamic()1286         # from: lib/membrane_rtp_vp8/payload_descriptor.ex:156:381287         descriptor_acc12881289     when defining the variable "descriptor_acc", you must also pattern match on "%Membrane.RTP.VP8.PayloadDescriptor{}"12901291     type warning found at:1292     │1293 158 │        do: {:ok, {%__MODULE__{descriptor_acc | tl0picidx: tl0picidx}, rest}}1294     │                   ~1295     │1296     └─ lib/membrane_rtp_vp8/payload_descriptor.ex:158:19: Membrane.RTP.VP8.PayloadDescriptor.get_temporal_level_zero_index/212971298Generated membrane_rtp_vp8_plugin app1299==> membrane_funnel_plugin1300Compiling 2 files (.ex)1301Generated membrane_funnel_plugin app1302==> membrane_tee_plugin1303Compiling 3 files (.ex)1304130503:02:08.768 [warning] Membrane.Tee.Master defines pads with `flow_control: :auto` and pads with `flow_control: :push` at the same time. Please, consider if this what you want to do - flow control of these pads won't be integrated. Setting `flow_control` to `:auto` in the places where it has been set to `:push` might be a good idea.1306Pads with `flow_control: :auto`: input, master.1307Pads with `flow_control: :push`: copy.13081309If you want get rid of this warning, pass `flow_control_hints?: false` option to `use Membrane.Filter`.13101311131203:02:08.801 [warning] Membrane.Tee.PushOutput defines pads with `flow_control: :auto` and pads with `flow_control: :push` at the same time. Please, consider if this what you want to do - flow control of these pads won't be integrated. Setting `flow_control` to `:auto` in the places where it has been set to `:push` might be a good idea.1313Pads with `flow_control: :auto`: input.1314Pads with `flow_control: :push`: output.13151316If you want get rid of this warning, pass `flow_control_hints?: false` option to `use Membrane.Filter`.13171318Generated membrane_tee_plugin app1319==> membrane_file_plugin1320Compiling 10 files (.ex)1321Generated membrane_file_plugin app1322==> membrane_timestamp_queue1323Compiling 1 file (.ex)1324Generated membrane_timestamp_queue app1325==> membrane_mp4_plugin1326Compiling 32 files (.ex)1327    warning: the variable "content_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator1328    │1329 23 │           header_content: <<content::binary-size(content_size), data::binary>> <- rest,1330    │                                                  ~1331    │1332    └─ lib/membrane_mp4/container/parse_helper.ex:23:50: Membrane.MP4.Container.ParseHelper.parse_boxes/413331334    warning: the variable "size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator1335    │1336 76 │       <<^reserved::bitstring-size(size), rest::bitstring>> -> {:ok, {[], rest}, context}1337    │                                   ~1338    │1339    └─ lib/membrane_mp4/container/parse_helper.ex:76:35: Membrane.MP4.Container.ParseHelper.parse_field/313401341     warning: the variable "size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator1342     │1343 113 │       <<int::signed-integer-size(size), rest::bitstring>> ->1344     │                                  ~1345     │1346     └─ lib/membrane_mp4/container/parse_helper.ex:113:34: Membrane.MP4.Container.ParseHelper.parse_field/313471348     warning: the variable "size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator1349     │1350 123 │       <<uint::integer-size(size), rest::bitstring>> ->1351     │                            ~1352     │1353     └─ lib/membrane_mp4/container/parse_helper.ex:123:28: Membrane.MP4.Container.ParseHelper.parse_field/313541355     warning: the variable "int_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator1356     │1357 133 │       <<int::integer-size(int_size), frac::integer-size(frac_size), rest::bitstring>> ->1358     │                           ~1359     │1360     └─ lib/membrane_mp4/container/parse_helper.ex:133:27: Membrane.MP4.Container.ParseHelper.parse_field/313611362     warning: the variable "frac_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator1363     │1364 133 │       <<int::integer-size(int_size), frac::integer-size(frac_size), rest::bitstring>> ->1365     │                                                         ~1366     │1367     └─ lib/membrane_mp4/container/parse_helper.ex:133:57: Membrane.MP4.Container.ParseHelper.parse_field/313681369     warning: the variable "size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator1370     │1371 147 │       <<bin::bitstring-size(size), rest::bitstring>> -> {:ok, {bin, rest}, context}1372     │                             ~1373     │1374     └─ lib/membrane_mp4/container/parse_helper.ex:147:29: Membrane.MP4.Container.ParseHelper.parse_field/313751376    warning: the variable "to_skip" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator1377    │1378 75 │       <<_to_skip::binary-size(to_skip), payload::binary-size(size), rest::binary>> ->1379    │                               ~1380    │1381    └─ lib/membrane_mp4/demuxer/isom/samples_info.ex:75:31: Membrane.MP4.Demuxer.ISOM.SamplesInfo.do_get_samples/313821383    warning: the variable "size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator1384    │1385 75 │       <<_to_skip::binary-size(to_skip), payload::binary-size(size), rest::binary>> ->1386    │                                                              ~1387    │1388    └─ lib/membrane_mp4/demuxer/isom/samples_info.ex:75:62: Membrane.MP4.Demuxer.ISOM.SamplesInfo.do_get_samples/313891390     warning: the variable "mdat_header_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator1391     │1392 376 │         <<_header::binary-size(mdat_header_size), content::binary>> = state.partial1393     │                                ~1394     │1395     └─ lib/membrane_mp4/demuxer/isom.ex:376:32: Membrane.MP4.Demuxer.ISOM.handle_can_read_mdat_box/213961397     warning: a struct for Membrane.MP4.Muxer.CMAF.TrackSamplesQueue is expected on struct update:13981399         %Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{&1 | track_with_keyframes?: is_video_pad}14001401     but got type:14021403         dynamic()14041405     instead of using &1, you must define an anonymous function, define a variable and pattern match on "%Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{}"14061407     type warning found at:1408     │1409 301 │         &%SamplesQueue{&1 | track_with_keyframes?: is_video_pad}1410     │          ~1411     │1412     └─ lib/membrane_mp4/muxer/cmaf.ex:301:10: Membrane.MP4.Muxer.CMAF.handle_stream_format/414131414     warning: a struct for Membrane.Buffer is expected on struct update:14151416         %Membrane.Buffer{sample | dts: Membrane.Buffer.get_dts_or_pts(sample)}14171418     but got type:14191420         dynamic()14211422     where "sample" was given the type:14231424         # type: dynamic()1425         # from: lib/membrane_mp4/muxer/cmaf.ex:341:491426         sample14271428     when defining the variable "sample", you must also pattern match on "%Membrane.Buffer{}"14291430     type warning found at:1431     │1432 348 │     sample = %Buffer{sample | dts: Buffer.get_dts_or_pts(sample)}1433     │              ~1434     │1435     └─ lib/membrane_mp4/muxer/cmaf.ex:348:14: Membrane.MP4.Muxer.CMAF.handle_buffer/414361437     warning: a struct for Membrane.Buffer is expected on struct update:14381439         %Membrane.Buffer{sample | metadata: sample_metadata}14401441     but got type:14421443         dynamic(%{..., metadata: map()})14441445     where "sample" was given the type:14461447         # type: dynamic(%{..., metadata: map()})1448         # from: lib/membrane_mp4/muxer/cmaf.ex:489:171449         Map.put(1450           sample.metadata,1451           :duration,1452           Membrane.MP4.Muxer.CMAF.TrackSamplesQueue.last_sample(queue).metadata.duration1453         )14541455     when defining the variable "sample", you must also pattern match on "%Membrane.Buffer{}"14561457     type warning found at:1458     │1459 491 │           sample = %Buffer{sample | metadata: sample_metadata}1460     │                    ~1461     │1462     └─ lib/membrane_mp4/muxer/cmaf.ex:491:20: Membrane.MP4.Muxer.CMAF.generate_end_of_stream_segment/414631464     warning: a struct for Membrane.MP4.Muxer.CMAF.TrackSamplesQueue is expected on struct update:14651466         %Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{1467           queue1468           | collected_samples_duration: queue.collected_samples_duration + sample.metadata.duration,1469             target_samples: [sample | queue.target_samples]1470         }14711472     but got type:14731474         dynamic()14751476     where "queue" was given the type:14771478         # type: dynamic()1479         # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:125:161480         queue14811482     when defining the variable "queue", you must also pattern match on "%Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{}"14831484     type warning found at:1485     │1486 127 │     %__MODULE__{1487     │     ~1488     │1489     └─ lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:127:5: Membrane.MP4.Muxer.CMAF.TrackSamplesQueue.do_push/614901491     warning: a struct for Membrane.MP4.Muxer.CMAF.TrackSamplesQueue is expected on struct update:14921493         %Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{1494           queue1495           | excess_samples: [sample | queue.excess_samples]1496         }14971498     but got type:14991500         dynamic(%{..., collectable?: not false and not nil})15011502     where "queue" was given the types:15031504         # type: dynamic(%{..., collectable?: term()})1505         # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:185:141506         queue.collectable?15071508         # type: dynamic(%{..., collectable?: not false and not nil})1509         # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:185:141510         queue.collectable?15111512     when defining the variable "queue", you must also pattern match on "%Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{}"15131514     type warning found at:1515     │1516 186 │       %__MODULE__{queue | excess_samples: [sample | queue.excess_samples]}1517     │       ~1518     │1519     └─ lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:186:7: Membrane.MP4.Muxer.CMAF.TrackSamplesQueue.do_push/615201521     warning: a struct for Membrane.Buffer is expected on struct update:15221523         %Membrane.Buffer{prev_sample | metadata: prev_sample_metadata}15241525     but got type:15261527         dynamic(%{..., dts: term(), metadata: map()})15281529     where "prev_sample" was given the types:15301531         # type: dynamic(not nil)1532         # from: lib/membrane_mp4/muxer/cmaf.ex:7221533         prev_sample == nil15341535         # type: dynamic(%{..., dts: term()})1536         # from: lib/membrane_mp4/muxer/cmaf.ex:7251537         Numbers.sub(sample.dts, prev_sample.dts)15381539         # type: dynamic(%{..., dts: term(), metadata: map()})1540         # from: lib/membrane_mp4/muxer/cmaf.ex:726:341541         Map.put(prev_sample.metadata, :duration, duration)15421543     when defining the variable "prev_sample", you must also pattern match on "%Membrane.Buffer{}"15441545     type warning found at:1546     │1547 727 │       prev_sample = %Buffer{prev_sample | metadata: prev_sample_metadata}1548     │                     ~1549     │1550     └─ lib/membrane_mp4/muxer/cmaf.ex:727:21: Membrane.MP4.Muxer.CMAF.process_buffer_awaiting_duration/315511552     warning: a struct for Membrane.MP4.Muxer.CMAF.TrackSamplesQueue is expected on struct update:15531554         %Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{1555           queue1556           | collectable?: true,1557             target_samples: Enum.reverse(target_samples),1558             collected_samples_duration: total_duration(target_samples),1559             excess_samples: [sample]1560         }15611562     but got type:15631564         dynamic(%{1565           ...,1566           collectable?: false or nil,1567           excess_samples: list(term()),1568           target_samples: term(),1569           track_with_keyframes?: true1570         })15711572     where "queue" was given the types:15731574         # type: dynamic(%{..., collectable?: term()})1575         # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:185:141576         queue.collectable?15771578         # type: dynamic(%{..., collectable?: false or nil})1579         # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:185:141580         queue.collectable?15811582         # type: dynamic(%{..., collectable?: false or nil, track_with_keyframes?: term()})1583         # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:188:161584         queue.track_with_keyframes?15851586         # type: dynamic(%{..., collectable?: false or nil, track_with_keyframes?: boolean()})1587         # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:188:161588         queue.track_with_keyframes?15891590         # type: dynamic(%{..., collectable?: false or nil, track_with_keyframes?: true})1591         # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:188:161592         queue.track_with_keyframes?15931594         # type: dynamic(%{1595           ...,1596           collectable?: false or nil,1597           excess_samples: list(term()),1598           track_with_keyframes?: true1599         })1600         # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:189:471601         queue.excess_samples ++ queue.target_samples16021603         # type: dynamic(%{1604           ...,1605           collectable?: false or nil,1606           excess_samples: list(term()),1607           target_samples: term(),1608           track_with_keyframes?: true1609         })1610         # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:189:471611         queue.excess_samples ++ queue.target_samples16121613     when defining the variable "queue", you must also pattern match on "%Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{}"16141615     type warning found at:1616     │1617 191 │         %__MODULE__{1618     │         ~1619     │1620     └─ lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:191:9: Membrane.MP4.Muxer.CMAF.TrackSamplesQueue.do_push/616211622     warning: a struct for Membrane.MP4.Muxer.CMAF.TrackSamplesQueue is expected on struct update:16231624         %Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{1625           queue1626           | collectable?: true,1627             target_samples: Enum.reverse(queue.target_samples),1628             excess_samples: [sample | queue.excess_samples]1629         }16301631     but got type:16321633         dynamic(%{..., collectable?: false or nil, track_with_keyframes?: boolean()})16341635     where "queue" was given the types:16361637         # type: dynamic(%{..., collectable?: term()})1638         # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:185:141639         queue.collectable?16401641         # type: dynamic(%{..., collectable?: false or nil})1642         # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:185:141643         queue.collectable?16441645         # type: dynamic(%{..., collectable?: false or nil, track_with_keyframes?: term()})1646         # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:188:161647         queue.track_with_keyframes?16481649         # type: dynamic(%{..., collectable?: false or nil, track_with_keyframes?: boolean()})1650         # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:188:161651         queue.track_with_keyframes?16521653     when defining the variable "queue", you must also pattern match on "%Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{}"16541655     type warning found at:1656     │1657 199 │         %__MODULE__{1658     │         ~1659     │1660     └─ lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:199:9: Membrane.MP4.Muxer.CMAF.TrackSamplesQueue.do_push/616611662     warning: a struct for Membrane.MP4.Muxer.CMAF.TrackSamplesQueue is expected on struct update:16631664         %Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{1665           queue1666           | collectable?: false,1667             collected_samples_duration: 0,1668             target_samples: [],1669             excess_samples: []1670         }16711672     but got type:16731674         dynamic()16751676     where "queue" was given the type:16771678         # type: dynamic()1679         # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:329:201680         queue16811682     when defining the variable "queue", you must also pattern match on "%Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{}"16831684     type warning found at:1685     │1686 330 │     %__MODULE__{1687     │     ~1688     │1689     └─ lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:330:5: Membrane.MP4.Muxer.CMAF.TrackSamplesQueue.reset_queue/116901691     warning: a struct for Membrane.Buffer is expected on struct update:16921693         %Membrane.Buffer{buffer | dts: Membrane.Buffer.get_dts_or_pts(buffer)}16941695     but got type:16961697         dynamic()16981699     where "buffer" was given the type:17001701         # type: dynamic()1702         # from: lib/membrane_mp4/muxer/isom.ex1703         {{Membrane.Pad, :input, pad_ref}, {:buffer, buffer}}17041705     when defining the variable "buffer", you must also pattern match on "%Membrane.Buffer{}"17061707     type warning found at:1708     │1709 189 │     buffer = %Buffer{buffer | dts: Buffer.get_dts_or_pts(buffer)}1710     │              ~1711     │1712     └─ lib/membrane_mp4/muxer/isom.ex:189:14: Membrane.MP4.Muxer.ISOM.handle_queue_item/217131714     warning: the following clause will never match:17151716         {:error, :not_available_yet} ->17171718     it is expected to match on type:17191720         none()17211722     type warning found at:1723     │1724 288 │       {:error, :not_available_yet} -> {[], state}1725     │       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1726     │1727     └─ lib/membrane_mp4/demuxer/cmaf.ex:288: Membrane.MP4.Demuxer.CMAF.get_buffers/117281729     warning: incompatible types given to Ratio.mult/2:17301731         Ratio.mult(1732           Ratio.new(sample.ts, engine.last_timescales[sample.track_id]),1733           10001734         )17351736     given types:17371738         dynamic(), -integer()-17391740     but expected one of:17411742         (1743           %Ratio{numerator: float() or integer(), denominator: float() or integer()},1744           %Ratio{numerator: float() or integer(), denominator: float() or integer()}1745         )17461747     where "engine" was given the types:17481749         # type: dynamic(%{..., samples_info: term()})1750         # from: lib/membrane_mp4/demuxer/cmaf/engine.ex:182:121751         Enum.split_while(1752           engine.samples_info,1753           &(&1.offset - engine.how_many_segment_bytes_read < byte_size(mdat_box.content))1754         )17551756         # type: dynamic(%{..., how_many_segment_bytes_read: integer(), samples_info: term()})1757         # from: lib/membrane_mp4/demuxer/cmaf/engine.ex:192:481758         sample.offset - engine.how_many_segment_bytes_read17591760         # type: dynamic(%{1761           ...,1762           how_many_segment_bytes_read: integer(),1763           last_timescales:1764             %{..., __struct__: atom()} or nil or empty_list() or non_empty_list(term(), term()) or1765               non_struct_map(),1766           samples_info: term()1767         })1768         # from: lib/membrane_mp4/demuxer/cmaf/engine.ex:195:541769         engine.last_timescales[sample.track_id]17701771     where "sample" was given the types:17721773         # type: dynamic(%{..., offset: integer(), size: integer()})1774         # from: lib/membrane_mp4/demuxer/cmaf/engine.ex:192:221775         binary_part(mdat_box.content, sample.offset - engine.how_many_segment_bytes_read, sample.size)17761777         # type: dynamic(%{..., offset: integer()})1778         # from: lib/membrane_mp4/demuxer/cmaf/engine.ex:192:481779         sample.offset - engine.how_many_segment_bytes_read17801781         # type: dynamic(%{..., offset: integer(), size: integer(), ts: term()})1782         # from: lib/membrane_mp4/demuxer/cmaf/engine.ex:195:171783         Ratio.new(sample.ts, engine.last_timescales[sample.track_id])17841785         # type: dynamic(%{..., offset: integer(), size: integer(), track_id: term(), ts: term()})1786         # from: lib/membrane_mp4/demuxer/cmaf/engine.ex:195:541787         engine.last_timescales[sample.track_id]17881789     type warning found at:1790     │1791 196 │           |> Ratio.mult(1000)1792     │                    ~1793     │1794     └─ lib/membrane_mp4/demuxer/cmaf/engine.ex:196:20: Membrane.MP4.Demuxer.CMAF.Engine.read_mdat/217951796Generated membrane_mp4_plugin app1797==> unifex1798Bundlex: Building natives: unifex1799/work/proj/deps_x86_64/unifex/c_src/unifex/cnode/unifex/cnode.c: In function 'unifex_cnode_init':1800/work/proj/deps_x86_64/unifex/c_src/unifex/cnode/unifex/cnode.c:172:49: warning: 'calloc' sizes specified with 'sizeof' in the earlier argument and not in the later argument [-Wcalloc-transposed-args]1801  172 |   *env = (UnifexEnv){.node_name = calloc(sizeof(char), 256),1802      |                                                 ^~~~1803/work/proj/deps_x86_64/unifex/c_src/unifex/cnode/unifex/cnode.c:172:49: note: earlier argument should specify number of elements, later size of each element1804Compiling 33 files (.ex)1805    warning: unused require Bundlex.CNode1806    │1807  6 │   require Bundlex.CNode1808    │   ~1809    │1810    └─ lib/unifex/cnode.ex:6:318111812Generated unifex app1813==> ex_dtls1814Bundlex: Building natives: native1815Compiling 2 files (.ex)1816Generated ex_dtls app1817==> membrane_common_c1818Bundlex: Building natives: membrane, membrane_ringbuffer1819Compiling 1 file (.ex)1820Generated membrane_common_c app1821182203:02:17.614 [warning] Function decode marked as dirty does not match any function defined in spec (/work/proj/deps_x86_64/membrane_h264_ffmpeg_plugin/c_src/membrane_h264_ffmpeg_plugin/decoder.spec.exs).1823182403:02:17.614 [warning] Function flush marked as dirty does not match any function defined in spec (/work/proj/deps_x86_64/membrane_h264_ffmpeg_plugin/c_src/membrane_h264_ffmpeg_plugin/decoder.spec.exs).1825182603:02:17.657 [warning] Function flush marked as dirty does not match any function defined in spec (/work/proj/deps_x86_64/membrane_h264_ffmpeg_plugin/c_src/membrane_h264_ffmpeg_plugin/encoder.spec.exs).1827182803:02:17.657 [warning] Function encode marked as dirty does not match any function defined in spec (/work/proj/deps_x86_64/membrane_h264_ffmpeg_plugin/c_src/membrane_h264_ffmpeg_plugin/encoder.spec.exs).1829==> membrane_h264_ffmpeg_plugin1830Bundlex: Building natives: decoder, encoder1831warning: Bundlex: Couldn't load OS dependency using {:precompiled, "https://github.com/BtbN/FFmpeg-Builds/releases/download/latest/ffmpeg-n6.0-latest-linux64-gpl-shared-6.0.tar.xz", ["libavcodec", "libavutil"]}18321833couldn't download and extract the precompiled dependency :ffmpeg due to:1834	** (BundlexError) Cannot download file from https://github.com/BtbN/FFmpeg-Builds/releases/download/latest/ffmpeg-n6.0-latest-linux64-gpl-shared-6.0.tar.xz1835	Response status: 404183618371838Loading using {:pkg_config, ["libavcodec", "libavutil"]}183918401841could not compile dependency :membrane_h264_ffmpeg_plugin, "mix compile" failed. Errors may have been logged above. You can recompile this dependency with "mix deps.compile membrane_h264_ffmpeg_plugin --force", update it with "mix deps.update membrane_h264_ffmpeg_plugin" or clean it with "mix deps.clean membrane_h264_ffmpeg_plugin"1842==> nerves_compatibility_test1843** (Mix) Bundlex: Couldn't load OS dependency :ffmpeg of package membrane_h264_ffmpeg_plugin. Make sure to follow installation instructions that may be available in the readme of membrane_h264_ffmpeg_plugin.18441845Tried the following providers:18461847Provider `{:precompiled, "https://github.com/BtbN/FFmpeg-Builds/releases/download/latest/ffmpeg-n6.0-latest-linux64-gpl-shared-6.0.tar.xz", ["libavcodec", "libavutil"]}` couldn't download and extract the precompiled dependency :ffmpeg due to:1848	** (BundlexError) Cannot download file from https://github.com/BtbN/FFmpeg-Builds/releases/download/latest/ffmpeg-n6.0-latest-linux64-gpl-shared-6.0.tar.xz1849	Response status: 40418501851Provider `{:pkg_config, ["libavcodec", "libavutil"]}` couldn't load ["libavcodec", "libavutil"] libraries with pkg-config due to:1852	** (BundlexError) pkg-config error:1853	Code: 11854	Package libavcodec was not found in the pkg-config search path.1855	Perhaps you should add the directory containing `libavcodec.pc'1856	to the PKG_CONFIG_PATH environment variable1857	Package 'libavcodec', required by 'virtual:world', not found18581859