jenkins-bot has submitted this change and it was merged.
Change subject: Add defs for 1440p and clean up transcode format labels
......................................................................
Add defs for 1440p and clean up transcode format labels
Added defs for 1440p as an intermediate level for UHD content
transcodes (1440p is a better fit for laptop screens than 2160p
and plays faster in software VP9 decoding)
Also added a 360p level for H.264. Left the 320p one in place
in case anybody's using it. And removed old presets.
Clean up the transcode format labels into the following buckets:
* 160p "Low bandwidth"
* 240p "Small"
* 360p (default)
* 480p "SD"
* 720p "HD"
* 1080p "Full HD"
* 1440p "UHD"
* 2160p "Full UHD"
Change-Id: I8389bfad02dc5dacf68ad94b7f0bb194d8a27975
---
M WebVideoTranscode/WebVideoTranscode.php
M i18n/en.json
M i18n/qqq.json
3 files changed, 107 insertions(+), 32 deletions(-)
Approvals:
Paladox: Looks good to me, but someone else must approve
Jforrester: Looks good to me, approved
jenkins-bot: Verified
diff --git a/WebVideoTranscode/WebVideoTranscode.php
b/WebVideoTranscode/WebVideoTranscode.php
index fa30774..9c460f0 100644
--- a/WebVideoTranscode/WebVideoTranscode.php
+++ b/WebVideoTranscode/WebVideoTranscode.php
@@ -40,6 +40,7 @@
const ENC_WEBM_480P = '480p.webm';
const ENC_WEBM_720P = '720p.webm';
const ENC_WEBM_1080P = '1080p.webm';
+ const ENC_WEBM_1440P = '1440p.webm';
const ENC_WEBM_2160P = '2160p.webm';
// WebM VP9/Opus profiles:
@@ -49,15 +50,18 @@
const ENC_VP9_480P = '480p.vp9.webm';
const ENC_VP9_720P = '720p.vp9.webm';
const ENC_VP9_1080P = '1080p.vp9.webm';
+ const ENC_VP9_1440P = '1440p.vp9.webm';
const ENC_VP9_2160P = '2160p.vp9.webm';
// mp4 profiles:
const ENC_H264_160P = '160p.mp4';
const ENC_H264_240P = '240p.mp4';
const ENC_H264_320P = '320p.mp4';
+ const ENC_H264_360P = '360p.mp4';
const ENC_H264_480P = '480p.mp4';
const ENC_H264_720P = '720p.mp4';
const ENC_H264_1080P = '1080p.mp4';
+ const ENC_H264_1440P = '1440p.mp4';
const ENC_H264_2160P = '2160p.mp4';
const ENC_OGG_VORBIS = 'ogg';
@@ -194,6 +198,19 @@
'videoCodec' => 'vp8',
'type' => 'video/webm;
codecs="vp8, vorbis"',
),
+ WebVideoTranscode::ENC_WEBM_240P =>
+ array(
+ 'maxSize' => '426x240',
+ 'videoBitrate' => '256',
+ 'audioQuality' => '1',
+ 'samplerate' => '44100',
+ 'noUpscaling' => 'true',
+ 'twopass' => 'true',
+ 'keyframeInterval' => '128',
+ 'bufDelay' => '256',
+ 'videoCodec' => 'vp8',
+ 'type' => 'video/webm;
codecs="vp8, vorbis"',
+ ),
WebVideoTranscode::ENC_WEBM_360P =>
array(
'maxSize' => '640x360',
@@ -233,6 +250,15 @@
array(
'maxSize' => '1920x1080',
'videoBitrate' => '4096',
+ 'audioQuality' => 3,
+ 'noUpscaling' => 'true',
+ 'videoCodec' => 'vp8',
+ 'type' => 'video/webm;
codecs="vp8, vorbis"',
+ ),
+ WebVideoTranscode::ENC_WEBM_1440P =>
+ array(
+ 'maxSize' => '2560x1440',
+ 'videoBitrate' => '8192',
'audioQuality' => 3,
'noUpscaling' => 'true',
'videoCodec' => 'vp8',
@@ -329,6 +355,20 @@
'tileColumns' => '4',
'type' => 'video/webm;
codecs="vp9, opus"',
),
+ WebVideoTranscode::ENC_VP9_1440P =>
+ array(
+ 'maxSize' => '2560x1440',
+ 'videoBitrate' => '4096',
+ 'samplerate' => '48000',
+ 'noUpscaling' => 'true',
+ 'twopass' => 'true',
+ 'keyframeInterval' => '128',
+ 'bufDelay' => '256',
+ 'videoCodec' => 'vp9',
+ 'audioCodec' => 'opus',
+ 'tileColumns' => '4',
+ 'type' => 'video/webm;
codecs="vp9, opus"',
+ ),
WebVideoTranscode::ENC_VP9_2160P =>
array(
'maxSize' => '4096x2160',
@@ -355,40 +395,50 @@
array(
'maxSize' => '288x160',
'videoCodec' => 'h264',
- 'preset' => 'ipod320',
'videoBitrate' => '160k',
'audioCodec' => 'aac',
'channels' => '2',
'audioBitrate' => '40k',
'type' => 'video/mp4; codecs="avc1.42E01E,
mp4a.40.2"',
),
+
WebVideoTranscode::ENC_H264_240P =>
array(
'maxSize' => '426x240',
'videoCodec' => 'h264',
- 'preset' => 'ipod320',
'videoBitrate' => '256k',
'audioCodec' => 'aac',
'channels' => '2',
'audioBitrate' => '40k',
'type' => 'video/mp4; codecs="avc1.42E01E,
mp4a.40.2"',
),
+
WebVideoTranscode::ENC_H264_320P =>
array(
'maxSize' => '480x320',
'videoCodec' => 'h264',
- 'preset' => 'ipod320',
'videoBitrate' => '400k',
'audioCodec' => 'aac',
'channels' => '2',
'audioBitrate' => '40k',
'type' => 'video/mp4; codecs="avc1.42E01E,
mp4a.40.2"',
),
+
+ WebVideoTranscode::ENC_H264_360P =>
+ array(
+ 'maxSize' => '640x360',
+ 'videoCodec' => 'h264',
+ 'videoBitrate' => '512k',
+ 'audioCodec' => 'aac',
+ 'channels' => '2',
+ 'audioBitrate' => '64k',
+ 'type' => 'video/mp4; codecs="avc1.42E01E,
mp4a.40.2"',
+ ),
+
WebVideoTranscode::ENC_H264_480P =>
array(
- 'maxSize' => '640x480',
+ 'maxSize' => '854x480',
'videoCodec' => 'h264',
- 'preset' => 'ipod640',
'videoBitrate' => '1200k',
'audioCodec' => 'aac',
'channels' => '2',
@@ -399,7 +449,6 @@
array(
'maxSize' => '1280x720',
'videoCodec' => 'h264',
- 'preset' => '720p',
'videoBitrate' => '2500k',
'audioCodec' => 'aac',
'channels' => '2',
@@ -416,6 +465,16 @@
'audioBitrate' => '128k',
'type' => 'video/mp4; codecs="avc1.42E01E,
mp4a.40.2"',
),
+ WebVideoTranscode::ENC_H264_1440P =>
+ array(
+ 'maxSize' => '2560x1440',
+ 'videoCodec' => 'h264',
+ 'videoBitrate' => '16384k',
+ 'audioCodec' => 'aac',
+ 'channels' => '2',
+ 'audioBitrate' => '128k',
+ 'type' => 'video/mp4; codecs="avc1.42E01E,
mp4a.40.2"',
+ ),
WebVideoTranscode::ENC_H264_2160P =>
array(
'maxSize' => '4096x2160',
diff --git a/i18n/en.json b/i18n/en.json
index 92b28c4..a237d66 100644
--- a/i18n/en.json
+++ b/i18n/en.json
@@ -68,57 +68,65 @@
"timedmedia-derivative-160p.ogv": "Ogg 160P",
"timedmedia-derivative-desc-160p.ogv": "Low bandwidth Ogg video (160P)",
"timedmedia-derivative-240p.ogv": "Ogg 240P",
- "timedmedia-derivative-desc-240p.ogv": "Web streamable Ogg video
(240P)",
+ "timedmedia-derivative-desc-240p.ogv": "Small Ogg video (240P)",
"timedmedia-derivative-360p.ogv": "Ogg 360P",
- "timedmedia-derivative-desc-360p.ogv": "Web streamable Ogg video
(360P)",
+ "timedmedia-derivative-desc-360p.ogv": "Ogg video (360P)",
"timedmedia-derivative-480p.ogv": "Ogg 480P",
- "timedmedia-derivative-desc-480p.ogv": "Web streamable Ogg video
(480P)",
+ "timedmedia-derivative-desc-480p.ogv": "SD Ogg video (480P)",
"timedmedia-derivative-720p.ogv": "Ogg 720P",
- "timedmedia-derivative-desc-720p.ogv": "High quality downloadable Ogg
video (720P)",
+ "timedmedia-derivative-desc-720p.ogv": "HD Ogg video (720P)",
"timedmedia-derivative-1080p.ogv": "Ogg 1080P",
- "timedmedia-derivative-desc-1080p.ogv": "Full HD downloadable Ogg video
(1080P)",
+ "timedmedia-derivative-desc-1080p.ogv": "Full HD Ogg video (1080P)",
"timedmedia-derivative-160p.webm": "WebM 160P",
- "timedmedia-derivative-desc-160p.webm": "Web streamable WebM (160P)",
+ "timedmedia-derivative-desc-160p.webm": "Low bandwidth WebM (160P)",
"timedmedia-derivative-240p.webm": "WebM 240P",
- "timedmedia-derivative-desc-240p.webm": "Web streamable WebM (240P)",
+ "timedmedia-derivative-desc-240p.webm": "Small WebM (240P)",
"timedmedia-derivative-360p.webm": "WebM 360P",
- "timedmedia-derivative-desc-360p.webm": "Web streamable WebM (360P)",
+ "timedmedia-derivative-desc-360p.webm": "WebM (360P)",
"timedmedia-derivative-480p.webm": "WebM 480P",
- "timedmedia-derivative-desc-480p.webm": "Web streamable WebM (480P)",
+ "timedmedia-derivative-desc-480p.webm": "SD WebM (480P)",
"timedmedia-derivative-720p.webm": "WebM 720P",
- "timedmedia-derivative-desc-720p.webm": "High quality downloadable WebM
(720P)",
+ "timedmedia-derivative-desc-720p.webm": "HD WebM (720P)",
"timedmedia-derivative-1080p.webm": "WebM 1080P",
- "timedmedia-derivative-desc-1080p.webm": "Full HD downloadable WebM
(1080P)",
+ "timedmedia-derivative-desc-1080p.webm": "Full HD WebM (1080P)",
+ "timedmedia-derivative-1440p.webm": "WebM 1440P",
+ "timedmedia-derivative-desc-1440p.webm": "UHD WebM (1440P)",
"timedmedia-derivative-2160p.webm": "WebM 2160P",
- "timedmedia-derivative-desc-2160p.webm": "Full 4K downloadable WebM
(2160P)",
+ "timedmedia-derivative-desc-2160p.webm": "Full UHD WebM (2160P)",
"timedmedia-derivative-160p.vp9.webm": "VP9 160P",
- "timedmedia-derivative-desc-160p.vp9.webm": "Web streamable WebM VP9
(160P)",
+ "timedmedia-derivative-desc-160p.vp9.webm": "Low bandwidth VP9 (160P)",
"timedmedia-derivative-240p.vp9.webm": "VP9 240P",
- "timedmedia-derivative-desc-240p.vp9.webm": "Web streamable WebM VP9
(240P)",
+ "timedmedia-derivative-desc-240p.vp9.webm": "Small VP9 (240P)",
"timedmedia-derivative-360p.vp9.webm": "VP9 360P",
- "timedmedia-derivative-desc-360p.vp9.webm": "Web streamable WebM VP9
(360P)",
+ "timedmedia-derivative-desc-360p.vp9.webm": "VP9 (360P)",
"timedmedia-derivative-480p.vp9.webm": "VP9 480P",
- "timedmedia-derivative-desc-480p.vp9.webm": "Web streamable WebM VP9
(480P)",
+ "timedmedia-derivative-desc-480p.vp9.webm": "SD VP9 (480P)",
"timedmedia-derivative-720p.vp9.webm": "VP9 720P",
- "timedmedia-derivative-desc-720p.vp9.webm": "HD streamable WebM VP9
(720P)",
+ "timedmedia-derivative-desc-720p.vp9.webm": "HD VP9 (720P)",
"timedmedia-derivative-1080p.vp9.webm": "VP9 1080P",
- "timedmedia-derivative-desc-1080p.vp9.webm": "Full HD streamable WebM
VP9 (1080P)",
+ "timedmedia-derivative-desc-1080p.vp9.webm": "Full HD VP9 (1080P)",
+ "timedmedia-derivative-1440p.vp9.webm": "VP9 1440P",
+ "timedmedia-derivative-desc-1440p.vp9.webm": "UHD VP9 (1440P)",
"timedmedia-derivative-2160p.vp9.webm": "VP9 2160P",
- "timedmedia-derivative-desc-2160p.vp9.webm": "Full 4K streamable WebM
VP9 (2160P)",
+ "timedmedia-derivative-desc-2160p.vp9.webm": "4K UHD VP9 (2160P)",
"timedmedia-derivative-160p.mp4": "H264 160P",
- "timedmedia-derivative-desc-160p.mp4": "Device-friendly MP4 (160P)",
+ "timedmedia-derivative-desc-160p.mp4": "Low bandwidth MP4 H.264 (160P)",
"timedmedia-derivative-240p.mp4": "H264 240P",
- "timedmedia-derivative-desc-240p.mp4": "Device-friendly MP4 (240P)",
+ "timedmedia-derivative-desc-240p.mp4": "Small MP4 H.264 (240P)",
"timedmedia-derivative-320p.mp4": "H264 320P",
- "timedmedia-derivative-desc-320p.mp4": "Device-friendly MP4 (320P)",
+ "timedmedia-derivative-desc-320p.mp4": "MP4 H.264 (320P)",
+ "timedmedia-derivative-360p.mp4": "H264 360P",
+ "timedmedia-derivative-desc-360p.mp4": "MP4 H.264 (360P)",
"timedmedia-derivative-480p.mp4": "H264 480P",
- "timedmedia-derivative-desc-480p.mp4": "Web streamable MP4 (480P)",
+ "timedmedia-derivative-desc-480p.mp4": "SD MP4 H.264 (480P)",
"timedmedia-derivative-720p.mp4": "H264 720P",
- "timedmedia-derivative-desc-720p.mp4": "HD quality MP4 (720P)",
+ "timedmedia-derivative-desc-720p.mp4": "HD MP4 H.264 (720P)",
"timedmedia-derivative-1080p.mp4": "H264 1080P",
- "timedmedia-derivative-desc-1080p.mp4": "Full HD quality MP4 (1080P)",
+ "timedmedia-derivative-desc-1080p.mp4": "Full HD MP4 H.264 (1080P)",
+ "timedmedia-derivative-1440p.mp4": "H264 1440P",
+ "timedmedia-derivative-desc-1440p.mp4": "UHD MP4 H.264 (1440P)",
"timedmedia-derivative-2160p.mp4": "H264 2160P",
- "timedmedia-derivative-desc-2160p.mp4": "Full 4K quality MP4 (2160P)",
+ "timedmedia-derivative-desc-2160p.mp4": "4K UHD MP4 H.264 (2160P)",
"timedmedia-derivative-ogg": "Ogg Vorbis",
"timedmedia-derivative-desc-ogg": "Ogg Vorbis",
"timedmedia-derivative-opus": "Opus",
diff --git a/i18n/qqq.json b/i18n/qqq.json
index 8d57ac8..c00bf4b 100644
--- a/i18n/qqq.json
+++ b/i18n/qqq.json
@@ -107,6 +107,8 @@
"timedmedia-derivative-desc-720p.webm": "{{optional}} A type of media
format encoding",
"timedmedia-derivative-1080p.webm": "{{optional}} A type of media
format encoding",
"timedmedia-derivative-desc-1080p.webm": "{{optional}} A type of media
format encoding",
+ "timedmedia-derivative-1440p.webm": "{{optional}} A type of media
format encoding",
+ "timedmedia-derivative-desc-1440p.webm": "{{optional}} A type of media
format encoding",
"timedmedia-derivative-2160p.webm": "{{optional}} A type of media
format encoding",
"timedmedia-derivative-desc-2160p.webm": "{{optional}} A type of media
format encoding",
"timedmedia-derivative-160p.vp9.webm": "{{optional}} A type of media
format encoding",
@@ -121,6 +123,8 @@
"timedmedia-derivative-desc-720p.vp9.webm": "A type of media format
encoding",
"timedmedia-derivative-1080p.vp9.webm": "{{optional}} A type of media
format encoding",
"timedmedia-derivative-desc-1080p.vp9.webm": "{{optional}} A type of
media format encoding",
+ "timedmedia-derivative-1440p.vp9.webm": "{{optional}} A type of media
format encoding",
+ "timedmedia-derivative-desc-1440p.vp9.webm": "{{optional}} A type of
media format encoding",
"timedmedia-derivative-2160p.vp9.webm": "{{optional}} A type of media
format encoding",
"timedmedia-derivative-desc-2160p.vp9.webm": "{{optional}} A type of
media format encoding",
"timedmedia-derivative-160p.mp4": "{{optional}} A type of media format
encoding",
@@ -129,12 +133,16 @@
"timedmedia-derivative-desc-240p.mp4": "{{optional}} A type of media
format encoding",
"timedmedia-derivative-320p.mp4": "{{optional}} A type of media format
encoding",
"timedmedia-derivative-desc-320p.mp4": "{{optional}} A type of media
format encoding",
+ "timedmedia-derivative-360p.mp4": "{{optional}} A type of media format
encoding",
+ "timedmedia-derivative-desc-360p.mp4": "{{optional}} A type of media
format encoding",
"timedmedia-derivative-480p.mp4": "{{optional}} A type of media format
encoding",
"timedmedia-derivative-desc-480p.mp4": "{{optional}} A type of media
format encoding",
"timedmedia-derivative-720p.mp4": "{{optional}} A type of media format
encoding",
"timedmedia-derivative-desc-720p.mp4": "{{optional}} A type of media
format encoding",
"timedmedia-derivative-1080p.mp4": "{{optional}} A type of media format
encoding",
"timedmedia-derivative-desc-1080p.mp4": "{{optional}} A type of media
format encoding",
+ "timedmedia-derivative-1440p.mp4": "{{optional}} A type of media format
encoding",
+ "timedmedia-derivative-desc-1440p.mp4": "{{optional}} A type of media
format encoding",
"timedmedia-derivative-2160p.mp4": "{{optional}} A type of media format
encoding",
"timedmedia-derivative-desc-2160p.mp4": "{{optional}} A type of media
format encoding",
"timedmedia-derivative-ogg": "{{optional}} Short form of a media
format.",
--
To view, visit https://gerrit.wikimedia.org/r/283007
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I8389bfad02dc5dacf68ad94b7f0bb194d8a27975
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/TimedMediaHandler
Gerrit-Branch: master
Gerrit-Owner: Brion VIBBER <[email protected]>
Gerrit-Reviewer: Jforrester <[email protected]>
Gerrit-Reviewer: Paladox <[email protected]>
Gerrit-Reviewer: Siebrand <[email protected]>
Gerrit-Reviewer: TheDJ <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits