@@ -20,6 +20,19 @@ defmodule Turbojpeg do
20
20
height: height ( )
21
21
}
22
22
23
+ @ doc """
24
+ Converts yuv to jpeg images
25
+
26
+
27
+ iex> {:ok, jpeg} = Turbojpeg.yuv_to_jpeg(Shmex.new(frame), 1920, 1080, 90, :I420)
28
+ {:ok,
29
+ %Shmex{
30
+ capacity: 203783,
31
+ guard: #Reference<0.938325095.2990669827.232440>,
32
+ name: "/shmex-00000005607042890133#000",
33
+ size: 203783
34
+ }}
35
+ """
23
36
@ spec yuv_to_jpeg ( Shmex . t ( ) , width , height , quality , format ) ::
24
37
{ :ok , Shmex . t ( ) } | error ( )
25
38
def yuv_to_jpeg ( yuv , width , height , quality , format ) do
@@ -29,6 +42,19 @@ defmodule Turbojpeg do
29
42
{ :error , error }
30
43
end
31
44
45
+ @ doc """
46
+ Converts jpeg to yuv
47
+
48
+
49
+ iex> {:ok, yuv} = Turbojpeg.jpeg_to_yuv(Shmex.new(jpeg))
50
+ {:ok,
51
+ %Shmex{
52
+ capacity: 203783,
53
+ guard: #Reference<0.938325095.2990669827.232440>,
54
+ name: "/shmex-00000005607042890133#000",
55
+ size: 203783
56
+ }}
57
+ """
32
58
@ spec jpeg_to_yuv ( Shmex . t ( ) ) ::
33
59
{ :ok , Shmex . t ( ) } | error ( )
34
60
def jpeg_to_yuv ( jpeg ) do
@@ -38,6 +64,18 @@ defmodule Turbojpeg do
38
64
{ :error , error }
39
65
end
40
66
67
+ @ doc """
68
+ Gets the header from a jpegv
69
+
70
+ iex> {:ok, header} = Turbojpeg.get_jpeg_header(Shmex.new(jpeg))
71
+ {:ok,
72
+ %{
73
+ format: :I422,
74
+ width: 192,
75
+ height: 192
76
+ }
77
+ }
78
+ """
41
79
@ spec get_jpeg_header ( Shmex . t ( ) ) :: { :ok , jpeg_header } | error ( )
42
80
def get_jpeg_header ( jpeg ) do
43
81
Native . get_jpeg_header ( jpeg )
0 commit comments