From 7f20a3cf1fc9655056382c403f835a1bf57b8be2 Mon Sep 17 00:00:00 2001 From: rinpatch Date: Tue, 27 Nov 2018 14:34:29 +0300 Subject: [PATCH 1/2] Add Theora detection to upload.ex --- lib/pleroma/upload.ex | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/lib/pleroma/upload.ex b/lib/pleroma/upload.ex index 89aa779f9..9dcd9987a 100644 --- a/lib/pleroma/upload.ex +++ b/lib/pleroma/upload.ex @@ -162,7 +162,12 @@ def get_content_type(file) do "audio/mpeg" <<0x4F, 0x67, 0x67, 0x53, 0x00, 0x02, 0x00, 0x00>> -> - "audio/ogg" + case IO.binread(f, 27) do + <<_::size(160), 0x80, 0x74,0x68,0x65,0x6f,0x72,0x61>> -> + "video/ogg" + _ -> + "audio/ogg" + end <<0x52, 0x49, 0x46, 0x46, _, _, _, _>> -> "audio/wav" From 0d229613dfc771ee71272541ffff9ef640c2dc05 Mon Sep 17 00:00:00 2001 From: rinpatch Date: Tue, 27 Nov 2018 19:07:58 +0300 Subject: [PATCH 2/2] Fix lint error --- lib/pleroma/upload.ex | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/pleroma/upload.ex b/lib/pleroma/upload.ex index 9dcd9987a..238630bf3 100644 --- a/lib/pleroma/upload.ex +++ b/lib/pleroma/upload.ex @@ -163,8 +163,9 @@ def get_content_type(file) do <<0x4F, 0x67, 0x67, 0x53, 0x00, 0x02, 0x00, 0x00>> -> case IO.binread(f, 27) do - <<_::size(160), 0x80, 0x74,0x68,0x65,0x6f,0x72,0x61>> -> + <<_::size(160), 0x80, 0x74, 0x68, 0x65, 0x6F, 0x72, 0x61>> -> "video/ogg" + _ -> "audio/ogg" end