File tree Expand file tree Collapse file tree 1 file changed +11
-2
lines changed Expand file tree Collapse file tree 1 file changed +11
-2
lines changed Original file line number Diff line number Diff line change 1
1
defmodule Turbojpeg.Filter do
2
+ @ moduledoc """
3
+ Membrane filter converting raw video frames to JPEG.
4
+ """
2
5
use Membrane.Filter
3
6
alias Membrane.Buffer
4
7
5
8
def_input_pad :input , demand_unit: :buffers , caps: Membrane.Caps.Video.Raw
6
- def_output_pad :output , caps: Membrane.Caps.Video.Raw
9
+ # TODO: implement JPEG caps
10
+ def_output_pad :output , caps: :any
7
11
8
12
def_options quality: [
9
13
type: :integer ,
10
14
spec: Turbojpeg . quality ( ) ,
11
- default: 80 ,
15
+ default: 100 ,
12
16
description: "Jpeg encoding quality"
13
17
]
14
18
@@ -17,6 +21,11 @@ defmodule Turbojpeg.Filter do
17
21
{ { :ok , demand: { :input , size } } , state }
18
22
end
19
23
24
+ @ impl true
25
+ def handle_caps ( :input , _caps , _ctx , state ) do
26
+ { :ok , state }
27
+ end
28
+
20
29
@ impl true
21
30
def handle_process ( :input , buffer , ctx , state ) do
22
31
% { caps: caps } = ctx . pads . input
You can’t perform that action at this time.
0 commit comments