Current section
40 Versions
Jump to
Current section
40 Versions
Compare versions
3
files changed
+9
additions
-6
deletions
| @@ -1,6 +1,6 @@ | |
| 1 1 | {<<"links">>,[{<<"GitHub">>,<<"https://github.com/kim-company/kim_hls">>}]}. |
| 2 2 | {<<"name">>,<<"kim_hls">>}. |
| 3 | - {<<"version">>,<<"2.4.1">>}. |
| 3 | + {<<"version">>,<<"2.4.2">>}. |
| 4 4 | {<<"description">>, |
| 5 5 | <<"HTTP Live Streaming (HLS) library. Modules, variables and functionality is bound to RFC 8216.">>}. |
| 6 6 | {<<"elixir">>,<<"~> 1.14">>}. |
| @@ -308,7 +308,9 @@ defmodule HLS.Packager do | |
| 308 308 | case Storage.get(storage, manifest_uri, max_retries: 5) do |
| 309 309 | {:ok, data} -> |
| 310 310 | master = HLS.Playlist.unmarshal(data, %HLS.Playlist.Master{uri: opts[:manifest_uri]}) |
| 311 | - load_track_opts = Keyword.take(opts, [:resume_finished_tracks, :restore_pending_segments]) |
| 311 | + |
| 312 | + load_track_opts = |
| 313 | + Keyword.take(opts, [:resume_finished_tracks, :restore_pending_segments, :max_segments]) |
| 312 314 | |
| 313 315 | {:ok, |
| 314 316 | %__MODULE__{ |
| @@ -986,6 +988,7 @@ defmodule HLS.Packager do | |
| 986 988 | resume_finished_tracks = Keyword.fetch!(opts, :resume_finished_tracks) |
| 987 989 | restore_pending_segments = Keyword.fetch!(opts, :restore_pending_segments) |
| 988 990 | streams = Enum.concat(master.streams, master.alternative_renditions) |
| 991 | + playlist_type = if is_nil(opts[:max_segments]), do: :event |
| 989 992 | |
| 990 993 | streams |
| 991 994 | |> Stream.map(fn stream -> |
| @@ -1033,7 +1036,7 @@ defmodule HLS.Packager do | |
| 1033 1036 | media = |
| 1034 1037 | media |
| 1035 1038 | |> Map.replace!(:finished, false) |
| 1036 | - |> Map.replace!(:type, :event) |
| 1039 | + |> Map.replace!(:type, playlist_type) |
| 1037 1040 | |
| 1038 1041 | %{track | media_playlist: media} |
| 1039 1042 | |
| @@ -1063,12 +1066,12 @@ defmodule HLS.Packager do | |
| 1063 1066 | data |
| 1064 1067 | |> HLS.Playlist.unmarshal(%HLS.Playlist.Media{uri: pending_uri}) |
| 1065 1068 | |> Map.replace!(:finished, false) |
| 1066 | - |> Map.replace!(:type, :event) |
| 1069 | + |> Map.replace!(:type, playlist_type) |
| 1067 1070 | else |
| 1068 1071 | _error -> |
| 1069 1072 | %HLS.Playlist.Media{ |
| 1070 1073 | uri: pending_uri, |
| 1071 | - type: :event, |
| 1074 | + type: playlist_type, |
| 1072 1075 | target_segment_duration: track.media_playlist.target_segment_duration, |
| 1073 1076 | version: track.media_playlist.version |
| 1074 1077 | } |
| @@ -6,7 +6,7 @@ defmodule HLS.MixProject do | |
| 6 6 | def project do |
| 7 7 | [ |
| 8 8 | app: :kim_hls, |
| 9 | - version: "2.4.1", |
| 9 | + version: "2.4.2", |
| 10 10 | elixir: "~> 1.14", |
| 11 11 | start_permanent: Mix.env() == :prod, |
| 12 12 | elixirc_paths: elixirc_paths(Mix.env()), |