From 99ff44d408455a0f7ee33a7b369bdb72e9bea0c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Feliks=20Pobiedzi=C5=84ski?= <38541925+FelonEkonom@users.noreply.github.com> Date: Thu, 16 Nov 2023 16:19:23 +0100 Subject: [PATCH] Release membrane_rtmp_plugin v0.19.0 (#76) --- README.md | 2 +- lib/membrane_rtmp_plugin/rtmp/sink/sink.ex | 10 +++++----- lib/membrane_rtmp_plugin/rtmp/source/bin.ex | 8 ++------ .../rtmp/source/source.ex | 2 +- mix.exs | 16 +++++++-------- mix.lock | 16 +++++++-------- test/membrane_rtmp_plugin/rtmp_sink_test.exs | 10 ++++------ .../rtmp_source_bin_test.exs | 20 ++++++------------- test/support/rtmp_source_test_pipeline.ex | 2 +- 9 files changed, 36 insertions(+), 50 deletions(-) diff --git a/README.md b/README.md index 9846636b..5879e37c 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,7 @@ The package can be installed by adding `membrane_rtmp_plugin` to your list of de ```elixir def deps do [ - {:membrane_rtmp_plugin, "~> 0.18.0"} + {:membrane_rtmp_plugin, "~> 0.19.0"} ] end ``` diff --git a/lib/membrane_rtmp_plugin/rtmp/sink/sink.ex b/lib/membrane_rtmp_plugin/rtmp/sink/sink.ex index 7398e3d7..cb9014c6 100644 --- a/lib/membrane_rtmp_plugin/rtmp/sink/sink.ex +++ b/lib/membrane_rtmp_plugin/rtmp/sink/sink.ex @@ -22,13 +22,13 @@ defmodule Membrane.RTMP.Sink do def_input_pad :audio, availability: :on_request, accepted_format: AAC, - mode: :pull, + flow_control: :manual, demand_unit: :buffers def_input_pad :video, availability: :on_request, accepted_format: %H264{stream_structure: structure} when H264.is_avc(structure), - mode: :pull, + flow_control: :manual, demand_unit: :buffers def_options rtmp_url: [ @@ -173,15 +173,15 @@ defmodule Membrane.RTMP.Sink do end @impl true - def handle_write(pad, buffer, _ctx, %{ready?: false} = state) do + def handle_buffer(pad, buffer, _ctx, %{ready?: false} = state) do {[], fill_frame_buffer(state, pad, buffer)} end - def handle_write(pad, buffer, _ctx, %{forward_mode?: true} = state) do + def handle_buffer(pad, buffer, _ctx, %{forward_mode?: true} = state) do {[demand: pad], write_frame(state, pad, buffer)} end - def handle_write(pad, buffer, _ctx, state) do + def handle_buffer(pad, buffer, _ctx, state) do state |> fill_frame_buffer(pad, buffer) |> write_frame_interleaved() diff --git a/lib/membrane_rtmp_plugin/rtmp/source/bin.ex b/lib/membrane_rtmp_plugin/rtmp/source/bin.ex index 630c76f4..353820b9 100644 --- a/lib/membrane_rtmp_plugin/rtmp/source/bin.ex +++ b/lib/membrane_rtmp_plugin/rtmp/source/bin.ex @@ -24,15 +24,11 @@ defmodule Membrane.RTMP.SourceBin do def_output_pad :video, accepted_format: H264, - availability: :always, - mode: :pull, - demand_unit: :buffers + availability: :always def_output_pad :audio, accepted_format: AAC, - availability: :always, - mode: :pull, - demand_unit: :buffers + availability: :always def_options socket: [ spec: :gen_tcp.socket() | :ssl.sslsocket(), diff --git a/lib/membrane_rtmp_plugin/rtmp/source/source.ex b/lib/membrane_rtmp_plugin/rtmp/source/source.ex index fcd60f3a..13a77da3 100644 --- a/lib/membrane_rtmp_plugin/rtmp/source/source.ex +++ b/lib/membrane_rtmp_plugin/rtmp/source/source.ex @@ -20,7 +20,7 @@ defmodule Membrane.RTMP.Source do def_output_pad :output, availability: :always, accepted_format: Membrane.RemoteStream, - mode: :pull + flow_control: :manual def_options socket: [ spec: :gen_tcp.socket() | :ssl.sslsocket(), diff --git a/mix.exs b/mix.exs index ac7b3202..1560d375 100644 --- a/mix.exs +++ b/mix.exs @@ -1,7 +1,7 @@ defmodule Membrane.RTMP.Mixfile do use Mix.Project - @version "0.18.0" + @version "0.19.0" @github_url "https://github.com/membraneframework/membrane_rtmp_plugin" def project do @@ -38,17 +38,17 @@ defmodule Membrane.RTMP.Mixfile do defp deps do [ - {:membrane_core, "~> 0.12.3"}, + {:membrane_core, "~> 1.0"}, {:unifex, "~> 1.1.0"}, - {:membrane_h264_plugin, "~> 0.7.0"}, + {:membrane_h264_plugin, "~> 0.9.0"}, {:membrane_h264_format, "~> 0.6.1"}, - {:membrane_aac_plugin, "~> 0.16.0"}, - {:membrane_flv_plugin, "~> 0.9.0"}, - {:membrane_file_plugin, "~> 0.15.0"}, + {:membrane_aac_plugin, "~> 0.18.0"}, + {:membrane_flv_plugin, "~> 0.11.0"}, + {:membrane_file_plugin, "~> 0.16.0"}, # testing - {:membrane_hackney_plugin, "~> 0.10.0", only: :test}, + {:membrane_hackney_plugin, "~> 0.11.0", only: :test}, {:ffmpex, "~> 0.10.0", only: :test}, - {:membrane_stream_plugin, "~> 0.3.1", only: :test}, + {:membrane_stream_plugin, "~> 0.4.0", only: :test}, # development {:ex_doc, "~> 0.28", only: :dev, runtime: false}, {:dialyxir, "~> 1.1", only: :dev, runtime: false}, diff --git a/mix.lock b/mix.lock index f4f3f86d..25f36661 100644 --- a/mix.lock +++ b/mix.lock @@ -25,14 +25,14 @@ "makeup_elixir": {:hex, :makeup_elixir, "0.16.1", "cc9e3ca312f1cfeccc572b37a09980287e243648108384b97ff2b76e505c3555", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}, {:nimble_parsec, "~> 1.2.3 or ~> 1.3", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "e127a341ad1b209bd80f7bd1620a15693a9908ed780c3b763bccf7d200c767c6"}, "makeup_erlang": {:hex, :makeup_erlang, "0.1.2", "ad87296a092a46e03b7e9b0be7631ddcf64c790fa68a9ef5323b6cbb36affc72", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}], "hexpm", "f3f5a1ca93ce6e092d92b6d9c049bcda58a3b617a8d888f8e7231c85630e8108"}, "membrane_aac_format": {:hex, :membrane_aac_format, "0.8.0", "515631eabd6e584e0e9af2cea80471fee6246484dbbefc4726c1d93ece8e0838", [:mix], [{:bimap, "~> 1.1", [hex: :bimap, repo: "hexpm", optional: false]}], "hexpm", "a30176a94491033ed32be45e51d509fc70a5ee6e751f12fd6c0d60bd637013f6"}, - "membrane_aac_plugin": {:hex, :membrane_aac_plugin, "0.16.1", "ea2864a03c47dd3d49a96d7ca6e39a49421ba228fc760fce7e4971b37a202102", [:mix], [{:bunch, "~> 1.0", [hex: :bunch, repo: "hexpm", optional: false]}, {:crc, "~> 0.10.2", [hex: :crc, repo: "hexpm", optional: false]}, {:membrane_aac_format, "~> 0.8.0", [hex: :membrane_aac_format, repo: "hexpm", optional: false]}, {:membrane_core, "~> 0.12.0", [hex: :membrane_core, repo: "hexpm", optional: false]}], "hexpm", "f7ee9738de777056d9eab864bc120195ccae0986b5cfba79694a1b67d9253579"}, - "membrane_core": {:hex, :membrane_core, "0.12.9", "b80239deacf98f24cfd2e0703b632e92ddded8b989227cd6e724140f433b0aac", [:mix], [{:bunch, "~> 1.6", [hex: :bunch, repo: "hexpm", optional: false]}, {:qex, "~> 0.3", [hex: :qex, repo: "hexpm", optional: false]}, {:ratio, "~> 2.0", [hex: :ratio, repo: "hexpm", optional: false]}, {:telemetry, "~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "389b4b22da0e35d5b053ec2fa87bf36882e0ab88f8fb841af895982fb4abe504"}, - "membrane_file_plugin": {:hex, :membrane_file_plugin, "0.15.0", "ddf9535fda82aae5b0688a98de1d02268287ffc8bcc6dba1a85e057d71c522af", [:mix], [{:membrane_core, "~> 0.12.0", [hex: :membrane_core, repo: "hexpm", optional: false]}], "hexpm", "fa2f7219f96c9e815475dc0d8c238c0a5648012917584756eb3eee476f737ce2"}, - "membrane_flv_plugin": {:hex, :membrane_flv_plugin, "0.9.0", "967e712ccd4d0d49e100c955978ecacf87aed2dd0798a90fb7eb3024dbf6701e", [:mix], [{:bimap, "~> 1.2", [hex: :bimap, repo: "hexpm", optional: false]}, {:bunch, "~> 1.3", [hex: :bunch, repo: "hexpm", optional: false]}, {:membrane_aac_format, "~> 0.8.0", [hex: :membrane_aac_format, repo: "hexpm", optional: false]}, {:membrane_core, "~> 0.12.3", [hex: :membrane_core, repo: "hexpm", optional: false]}, {:membrane_h264_format, "~> 0.6.1", [hex: :membrane_h264_format, repo: "hexpm", optional: false]}], "hexpm", "c839fe9d31c7a96750d9ae3e3b226f69f925aa45ffacadb0c2fb6450168acc52"}, + "membrane_aac_plugin": {:hex, :membrane_aac_plugin, "0.18.0", "b65697fa31f25ee35520f4f402cfdc6af847bb508f39a3bdd295f117fa1ce59b", [:mix], [{:bunch, "~> 1.0", [hex: :bunch, repo: "hexpm", optional: false]}, {:crc, "~> 0.10.2", [hex: :crc, repo: "hexpm", optional: false]}, {:membrane_aac_format, "~> 0.8.0", [hex: :membrane_aac_format, repo: "hexpm", optional: false]}, {:membrane_core, "~> 1.0", [hex: :membrane_core, repo: "hexpm", optional: false]}], "hexpm", "cefaef80e0d1b94ef294127db79f3af0cbc2c691e15c3bb9a4c86bf419839a72"}, + "membrane_core": {:hex, :membrane_core, "1.0.0", "1b543aefd952283be1f2a215a1db213aa4d91222722ba03cd35280622f1905ee", [:mix], [{:bunch, "~> 1.6", [hex: :bunch, repo: "hexpm", optional: false]}, {:qex, "~> 0.3", [hex: :qex, repo: "hexpm", optional: false]}, {:ratio, "~> 3.0", [hex: :ratio, repo: "hexpm", optional: false]}, {:telemetry, "~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "352c90fd0a29942143c4bf7a727cc05c632e323f50a1a4e99321b1e8982f1533"}, + "membrane_file_plugin": {:hex, :membrane_file_plugin, "0.16.0", "7917f6682c22b9bcfc2ca20ed960eee0f7d03ad31fd5f59ed850f1fe3ddd545a", [:mix], [{:membrane_core, "~> 1.0", [hex: :membrane_core, repo: "hexpm", optional: false]}], "hexpm", "b0727998f75a9b4dab8a2baefdfc13c3eac00a04e061ab1b0e61dc5566927acc"}, + "membrane_flv_plugin": {:hex, :membrane_flv_plugin, "0.11.0", "609daa560067bb009efb5b8625abf0c76c366d191cdebae101757d36a5b7d525", [:mix], [{:bimap, "~> 1.2", [hex: :bimap, repo: "hexpm", optional: false]}, {:bunch, "~> 1.3", [hex: :bunch, repo: "hexpm", optional: false]}, {:membrane_aac_format, "~> 0.8.0", [hex: :membrane_aac_format, repo: "hexpm", optional: false]}, {:membrane_core, "~> 1.0", [hex: :membrane_core, repo: "hexpm", optional: false]}, {:membrane_h264_format, "~> 0.6.1", [hex: :membrane_h264_format, repo: "hexpm", optional: false]}], "hexpm", "db780cbfff857f6403daa5759f7a7642b896399f811137dfac3741c51a26dd4e"}, "membrane_h264_format": {:hex, :membrane_h264_format, "0.6.1", "44836cd9de0abe989b146df1e114507787efc0cf0da2368f17a10c47b4e0738c", [:mix], [], "hexpm", "4b79be56465a876d2eac2c3af99e115374bbdc03eb1dea4f696ee9a8033cd4b0"}, - "membrane_h264_plugin": {:hex, :membrane_h264_plugin, "0.7.3", "c558137cdfe72ca68a1bcf05d30cfd1bdc2264a3fbea0b002e9682a6832efc7d", [:mix], [{:bunch, "~> 1.4", [hex: :bunch, repo: "hexpm", optional: false]}, {:membrane_core, "~> 0.12.7", [hex: :membrane_core, repo: "hexpm", optional: false]}, {:membrane_h264_format, "~> 0.6.0", [hex: :membrane_h264_format, repo: "hexpm", optional: false]}], "hexpm", "291b0b5ed07e0e39ec0369f6a3d47a189544ddb62ce2b7a1443742beb6618992"}, - "membrane_hackney_plugin": {:hex, :membrane_hackney_plugin, "0.10.1", "1c56cb9414a47dbd47d9e8aa9829536858b0dae601dc2878e29913dd0a9ff9f7", [:mix], [{:hackney, "~> 1.16", [hex: :hackney, repo: "hexpm", optional: false]}, {:membrane_core, "~> 0.12.8", [hex: :membrane_core, repo: "hexpm", optional: false]}, {:mockery, "~> 2.3", [hex: :mockery, repo: "hexpm", optional: false]}], "hexpm", "b57cc62185d64c12204a98eeb7f8219836b0d9487ad6541621630d9369a05fde"}, - "membrane_stream_plugin": {:hex, :membrane_stream_plugin, "0.3.1", "265f327dad815a8ef18f8872bdebc6c1aa1fea3d059446c937b76ff067c166e6", [:mix], [{:membrane_core, "~> 0.12.0", [hex: :membrane_core, repo: "hexpm", optional: false]}], "hexpm", "b504296b9f5a78b43c0d46ad66202a1f0f93d4c122949c27ad4c04f67f3c5907"}, + "membrane_h264_plugin": {:hex, :membrane_h264_plugin, "0.9.0", "4b76079489451794c27993fbe6108f10a34068d3034985dc73d601e46266ef90", [:mix], [{:bunch, "~> 1.4", [hex: :bunch, repo: "hexpm", optional: false]}, {:membrane_core, "~> 1.0", [hex: :membrane_core, repo: "hexpm", optional: false]}, {:membrane_h264_format, "~> 0.6.0", [hex: :membrane_h264_format, repo: "hexpm", optional: false]}], "hexpm", "7ecb9fdbe26304a577d9e32895aeee963b0a4bcc01fd77ecd9aebabdafbce58d"}, + "membrane_hackney_plugin": {:hex, :membrane_hackney_plugin, "0.11.0", "54b368333a23394e7cac2f4d6b701bf8c5ee6614670a31f4ebe009b5e691a5c1", [:mix], [{:hackney, "~> 1.16", [hex: :hackney, repo: "hexpm", optional: false]}, {:membrane_core, "~> 1.0", [hex: :membrane_core, repo: "hexpm", optional: false]}, {:mockery, "~> 2.3", [hex: :mockery, repo: "hexpm", optional: false]}], "hexpm", "2b28fd1be3c889d5824d7d985598386c7673828c88f49a91221df3626af8a998"}, + "membrane_stream_plugin": {:hex, :membrane_stream_plugin, "0.4.0", "0c4ab72a4e13bf0faa0f1166fbaf68d2e34167dbec345aedb74ce1eb7497bdda", [:mix], [{:membrane_core, "~> 1.0", [hex: :membrane_core, repo: "hexpm", optional: false]}], "hexpm", "5a9a9c17783e18ad740e6ddfed364581bdb7ebdab8e61ba2c19a1830356f7eb8"}, "metrics": {:hex, :metrics, "1.0.1", "25f094dea2cda98213cecc3aeff09e940299d950904393b2a29d191c346a8486", [:rebar3], [], "hexpm", "69b09adddc4f74a40716ae54d140f93beb0fb8978d8636eaded0c31b6f099f16"}, "mime": {:hex, :mime, "2.0.5", "dc34c8efd439abe6ae0343edbb8556f4d63f178594894720607772a041b04b02", [:mix], [], "hexpm", "da0d64a365c45bc9935cc5c8a7fc5e49a0e0f9932a761c55d6c52b142780a05c"}, "mimerl": {:hex, :mimerl, "1.2.0", "67e2d3f571088d5cfd3e550c383094b47159f3eee8ffa08e64106cdf5e981be3", [:rebar3], [], "hexpm", "f278585650aa581986264638ebf698f8bb19df297f66ad91b18910dfc6e19323"}, @@ -45,7 +45,7 @@ "parse_trans": {:hex, :parse_trans, "3.4.1", "6e6aa8167cb44cc8f39441d05193be6e6f4e7c2946cb2759f015f8c56b76e5ff", [:rebar3], [], "hexpm", "620a406ce75dada827b82e453c19cf06776be266f5a67cff34e1ef2cbb60e49a"}, "qex": {:hex, :qex, "0.5.1", "0d82c0f008551d24fffb99d97f8299afcb8ea9cf99582b770bd004ed5af63fd6", [:mix], [], "hexpm", "935a39fdaf2445834b95951456559e9dc2063d0a055742c558a99987b38d6bab"}, "rambo": {:hex, :rambo, "0.3.4", "8962ac3bd1a633ee9d0e8b44373c7913e3ce3d875b4151dcd060886092d2dce7", [:mix], [], "hexpm", "0cc54ed089fbbc84b65f4b8a774224ebfe60e5c80186fafc7910b3e379ad58f1"}, - "ratio": {:hex, :ratio, "2.4.2", "c8518f3536d49b1b00d88dd20d49f8b11abb7819638093314a6348139f14f9f9", [:mix], [{:decimal, "~> 1.6 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: true]}, {:numbers, "~> 5.2.0", [hex: :numbers, repo: "hexpm", optional: false]}], "hexpm", "441ef6f73172a3503de65ccf1769030997b0d533b1039422f1e5e0e0b4cbf89e"}, + "ratio": {:hex, :ratio, "3.0.2", "60a5976872a4dc3d873ecc57eed1738589e99d1094834b9c935b118231297cfb", [:mix], [{:decimal, "~> 1.6 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: true]}, {:numbers, "~> 5.2.0", [hex: :numbers, repo: "hexpm", optional: false]}], "hexpm", "3a13ed5a30ad0bfd7e4a86bf86d93d2b5a06f5904417d38d3f3ea6406cdfc7bb"}, "req": {:hex, :req, "0.4.4", "a17b6bec956c9af4f08b5d8e8a6fc6e4edf24ccc0ac7bf363a90bba7a0f0138c", [:mix], [{:brotli, "~> 0.3.1", [hex: :brotli, repo: "hexpm", optional: true]}, {:ezstd, "~> 1.0", [hex: :ezstd, repo: "hexpm", optional: true]}, {:finch, "~> 0.9", [hex: :finch, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}, {:mime, "~> 1.6 or ~> 2.0", [hex: :mime, repo: "hexpm", optional: false]}, {:nimble_csv, "~> 1.0", [hex: :nimble_csv, repo: "hexpm", optional: true]}, {:plug, "~> 1.0", [hex: :plug, repo: "hexpm", optional: true]}], "hexpm", "2618c0493444fee927d12073afb42e9154e766b3f4448e1011f0d3d551d1a011"}, "secure_random": {:hex, :secure_random, "0.5.1", "c5532b37c89d175c328f5196a0c2a5680b15ebce3e654da37129a9fe40ebf51b", [:mix], [], "hexpm", "1b9754f15e3940a143baafd19da12293f100044df69ea12db5d72878312ae6ab"}, "shmex": {:hex, :shmex, "0.5.0", "7dc4fb1a8bd851085a652605d690bdd070628717864b442f53d3447326bcd3e8", [:mix], [{:bunch_native, "~> 0.5.0", [hex: :bunch_native, repo: "hexpm", optional: false]}, {:bundlex, "~> 1.0", [hex: :bundlex, repo: "hexpm", optional: false]}], "hexpm", "b67bb1e22734758397c84458dbb746519e28eac210423c267c7248e59fc97bdc"}, diff --git a/test/membrane_rtmp_plugin/rtmp_sink_test.exs b/test/membrane_rtmp_plugin/rtmp_sink_test.exs index 93ff3ae5..b087e868 100644 --- a/test/membrane_rtmp_plugin/rtmp_sink_test.exs +++ b/test/membrane_rtmp_plugin/rtmp_sink_test.exs @@ -31,7 +31,6 @@ defmodule Membrane.RTMP.SinkTest do # There's an RC - there's no way to ensure RTMP server starts to listen before pipeline is started # so it may retry a few times before succeeding - assert_pipeline_play(sink_pipeline_pid, 5000) assert_start_of_stream(sink_pipeline_pid, :rtmp_sink, Pad.ref(:video, 0), 5_000) assert_start_of_stream(sink_pipeline_pid, :rtmp_sink, Pad.ref(:audio, 0)) @@ -39,7 +38,7 @@ defmodule Membrane.RTMP.SinkTest do assert_end_of_stream(sink_pipeline_pid, :rtmp_sink, Pad.ref(:video, 0), 5_000) assert_end_of_stream(sink_pipeline_pid, :rtmp_sink, Pad.ref(:audio, 0)) - :ok = Pipeline.terminate(sink_pipeline_pid, blocking?: true) + :ok = Pipeline.terminate(sink_pipeline_pid) # RTMP server should terminate when the connection is closed assert :ok = Task.await(rtmp_server) @@ -74,7 +73,6 @@ defmodule Membrane.RTMP.SinkTest do # There's an RC - there's no way to ensure RTMP server starts to listen before pipeline is started # so it may retry a few times before succeeding - assert_pipeline_play(sink_pipeline_pid, 5000) Enum.each( tracks, @@ -83,7 +81,7 @@ defmodule Membrane.RTMP.SinkTest do Enum.each(tracks, &assert_end_of_stream(sink_pipeline_pid, :rtmp_sink, Pad.ref(&1, 0), 5_000)) - :ok = Pipeline.terminate(sink_pipeline_pid, blocking?: true) + :ok = Pipeline.terminate(sink_pipeline_pid) # RTMP server should terminate when the connection is closed assert :ok = Task.await(rtmp_server) @@ -95,7 +93,7 @@ defmodule Membrane.RTMP.SinkTest do import Membrane.ChildrenSpec options = [ - structure: [ + spec: [ child(:rtmp_sink, %Membrane.RTMP.Sink{rtmp_url: rtmp_url, max_attempts: 5}), # child(:video_source, %Membrane.File.Source{location: "test/fixtures/video.msr"}) @@ -122,7 +120,7 @@ defmodule Membrane.RTMP.SinkTest do import Membrane.ChildrenSpec options = [ - structure: + spec: [ child(:rtmp_sink, %Membrane.RTMP.Sink{ rtmp_url: rtmp_url, diff --git a/test/membrane_rtmp_plugin/rtmp_source_bin_test.exs b/test/membrane_rtmp_plugin/rtmp_source_bin_test.exs index fe5b1ac8..d67d3b04 100644 --- a/test/membrane_rtmp_plugin/rtmp_source_bin_test.exs +++ b/test/membrane_rtmp_plugin/rtmp_source_bin_test.exs @@ -26,8 +26,6 @@ defmodule Membrane.RTMP.SourceBin.IntegrationTest do pipeline = await_pipeline_started() - assert_pipeline_play(pipeline) - assert_buffers(%{ pipeline: pipeline, sink: :video_sink, @@ -46,7 +44,7 @@ defmodule Membrane.RTMP.SourceBin.IntegrationTest do assert_end_of_stream(pipeline, :video_sink, :input) # Cleanup - Testing.Pipeline.terminate(pipeline, blocking?: true) + Testing.Pipeline.terminate(pipeline) assert :ok = Task.await(ffmpeg_task) end @@ -61,8 +59,6 @@ defmodule Membrane.RTMP.SourceBin.IntegrationTest do pipeline = await_pipeline_started() - assert_pipeline_play(pipeline) - assert_buffers(%{ pipeline: pipeline, sink: :video_sink, @@ -81,7 +77,7 @@ defmodule Membrane.RTMP.SourceBin.IntegrationTest do assert_end_of_stream(pipeline, :video_sink, :input) # Cleanup - Testing.Pipeline.terminate(pipeline, blocking?: true) + Testing.Pipeline.terminate(pipeline) assert :ok = Task.await(ffmpeg_task) end @@ -99,7 +95,6 @@ defmodule Membrane.RTMP.SourceBin.IntegrationTest do end) pipeline = await_pipeline_started() - assert_pipeline_play(pipeline) assert_buffers(%{ pipeline: pipeline, @@ -112,7 +107,7 @@ defmodule Membrane.RTMP.SourceBin.IntegrationTest do assert_end_of_stream(pipeline, :video_sink, :input) # Cleanup - Testing.Pipeline.terminate(pipeline, blocking?: true) + Testing.Pipeline.terminate(pipeline) assert :ok = Task.await(ffmpeg_task) end @@ -128,7 +123,6 @@ defmodule Membrane.RTMP.SourceBin.IntegrationTest do end) pipeline = await_pipeline_started() - assert_pipeline_play(pipeline) assert_buffers(%{ pipeline: pipeline, @@ -141,7 +135,7 @@ defmodule Membrane.RTMP.SourceBin.IntegrationTest do assert_end_of_stream(pipeline, :video_sink, :input) # Cleanup - Testing.Pipeline.terminate(pipeline, blocking?: true) + Testing.Pipeline.terminate(pipeline) assert :ok = Task.await(ffmpeg_task) end @@ -154,7 +148,6 @@ defmodule Membrane.RTMP.SourceBin.IntegrationTest do end) pipeline = await_pipeline_started() - assert_pipeline_play(pipeline) assert_pipeline_notified( pipeline, @@ -166,7 +159,7 @@ defmodule Membrane.RTMP.SourceBin.IntegrationTest do assert_end_of_stream(pipeline, :video_sink, :input) # Cleanup - Testing.Pipeline.terminate(pipeline, blocking?: true) + Testing.Pipeline.terminate(pipeline) assert :ok = Task.await(ffmpeg_task) end @@ -179,7 +172,6 @@ defmodule Membrane.RTMP.SourceBin.IntegrationTest do end) pipeline = await_pipeline_started() - assert_pipeline_play(pipeline) assert_pipeline_notified( pipeline, @@ -188,7 +180,7 @@ defmodule Membrane.RTMP.SourceBin.IntegrationTest do ) # Cleanup - Testing.Pipeline.terminate(pipeline, blocking?: true) + Testing.Pipeline.terminate(pipeline) assert :error = Task.await(ffmpeg_task) end diff --git a/test/support/rtmp_source_test_pipeline.ex b/test/support/rtmp_source_test_pipeline.ex index 732d864d..fc8efa10 100644 --- a/test/support/rtmp_source_test_pipeline.ex +++ b/test/support/rtmp_source_test_pipeline.ex @@ -26,7 +26,7 @@ defmodule Membrane.RTMP.Source.TestPipeline do send(test_process, {:pipeline_started, self()}) - {[spec: structure, playback: :playing], %{socket: socket}} + {[spec: structure], %{socket: socket}} end @impl true