r94732 MediaWiki - Code Review archive

Repository:MediaWiki
Revision:r94731‎ | r94732 | r94733 >
Date:07:46, 17 August 2011
Author:j
Status:deferred
Tags:
Comment:
New video encoding settings

160p => maxSize 288x160
video bitrate 192k
framerate 15
audio quality -1 (~48kbit) / 44100 / stereo

available in theora

360p => maxSize 640x360
video bitrate 512k
audio quality 2 (~96kbit)/ 44100 / stereo

available in theora

480p => maxSize 854x480
video bitrate 1024k
audio quality 3 (~112kbit) / 44100 / stereo

available in theora and vp8

720p => maxSize 1280x720
video quality 7
audio quality 6 (~160kbit)

available in theora and vp8
Modified paths:
  • /trunk/extensions/TimedMediaHandler/TimedMediaHandler.i18n.php (modified) (history)
  • /trunk/extensions/TimedMediaHandler/TimedMediaHandler.php (modified) (history)
  • /trunk/extensions/TimedMediaHandler/WebVideoTranscode/WebVideoTranscode.php (modified) (history)
  • /trunk/extensions/TimedMediaHandler/WebVideoTranscode/WebVideoTranscodeJob.php (modified) (history)

Diff [purge]

Index: trunk/extensions/TimedMediaHandler/TimedMediaHandler.php
@@ -90,16 +90,16 @@
9191 */
9292 $wgEnabledTranscodeSet = array(
9393 // Cover accessibility for low bandwidth / low resources clients:
94 - WebVideoTranscode::ENC_OGV_2MBS,
 94+ WebVideoTranscode::ENC_OGV_160P,
9595
9696 // A high end web streamable ogg video
97 - WebVideoTranscode::ENC_OGV_9MBS,
 97+ WebVideoTranscode::ENC_OGV_480P,
9898
9999 // A web streamable WebM video
100 - WebVideoTranscode::ENC_WEBM_9MBS,
 100+ WebVideoTranscode::ENC_WEBM_480P,
101101
102102 // A high quality WebM stream
103 - WebVideoTranscode::ENC_WEBM_HQ_VBR,
 103+ WebVideoTranscode::ENC_WEBM_720P,
104104 );
105105 /******************* CONFIGURATION ENDS HERE **********************/
106106
Index: trunk/extensions/TimedMediaHandler/TimedMediaHandler.i18n.php
@@ -69,26 +69,25 @@
7070 'timedmedia-source-file' => '$1 source',
7171 'timedmedia-source-file-desc' => 'Original $1, $2 × $3 ($4)',
7272
73 - // derivative timedmedia-derivative-desc-220_200kbs.ogv
74 - 'timedmedia-derivative-220_200kbs.ogv' => 'Ogg 200P',
75 - 'timedmedia-derivative-desc-220_200kbs.ogv' => 'Low bandwidth Ogg video (200P)',
 73+ // derivative timedmedia-derivative-desc-160p.ogv
 74+ 'timedmedia-derivative-desc-160p.ogv' => 'Low bandwidth Ogg video (160P)',
7675
77 - 'timedmedia-derivative-360_560kbs.ogv' => 'Ogg 360P',
78 - 'timedmedia-derivative-desc-360_560kbs.ogv' => 'Web streamable Ogg video (360P)',
 76+ 'timedmedia-derivative-360p.ogv' => 'Ogg 360P',
 77+ 'timedmedia-derivative-desc-360p.ogv' => 'Web streamable Ogg video (360P)',
7978
80 - 'timedmedia-derivative-480_880kbs.ogv' => 'Ogg 480P',
81 - 'timedmedia-derivative-desc-480_880kbs.ogv' => 'Web streamable Ogg video (480P)',
 79+ 'timedmedia-derivative-480p.ogv' => 'Ogg 480P',
 80+ 'timedmedia-derivative-desc-480p.ogv' => 'Web streamable Ogg video (480P)',
8281
8382 'timedmedia-derivative-720_VBR.ogv' => 'Ogg 720P',
84 - 'timedmedia-derivative-desc-720_VBR.ogv' => 'High quality downloadable Ogg video (720P)',
 83+ 'timedmedia-derivative-desc-720p.ogv' => 'High quality downloadable Ogg video (720P)',
8584
8685 // WebM profiles:
87 - 'timedmedia-derivative-360_560kbs.webm' => 'WebM 360P',
88 - 'timedmedia-derivative-desc-360_560kbs.webm' => 'Web streamable WebM (360P)',
89 - 'timedmedia-derivative-480_900kbs.webm' => 'WebM 480P',
90 - 'timedmedia-derivative-desc-480_900kbs.webm' => 'Web streamable WebM (480P)',
 86+ 'timedmedia-derivative-360p.webm' => 'WebM 360P',
 87+ 'timedmedia-derivative-desc-360p.webm' => 'Web streamable WebM (360P)',
 88+ 'timedmedia-derivative-480p.webm' => 'WebM 480P',
 89+ 'timedmedia-derivative-desc-480p.webm' => 'Web streamable WebM (480P)',
9190 'timedmedia-derivative-720_VBR.webm' => 'WebM 720P',
92 - 'timedmedia-derivative-desc-720_VBR.webm' => 'High quality downloadable WebM (720P)',
 91+ 'timedmedia-derivative-desc-720p.webm' => 'High quality downloadable WebM (720P)',
9392
9493 'timedmedia-subtitle-language' => '$1 ($2) subtitles',
9594 'timedmedia-subtitle-no-video' => 'There is no video associated with the current subtitle page',
@@ -345,14 +344,13 @@
346345 'timedmedia-oggThumb-failed' => 'oggThumb не атрымалася стварыць мініятуру.',
347346 'timedmedia-source-file' => 'Крыніца $1',
348347 'timedmedia-source-file-desc' => '$1 (арыгінал), $2×$3 ($4)',
349 - 'timedmedia-derivative-220_200kbs.ogv' => 'Ogg 200P',
350 - 'timedmedia-derivative-desc-220_200kbs.ogv' => 'Нізкапаточнае Ogg-відэа (200P)',
351 - 'timedmedia-derivative-desc-360_560kbs.ogv' => 'Паточнае Ogg-відэа (360 пкс)',
352 - 'timedmedia-derivative-desc-480_880kbs.ogv' => 'Паточнае Ogg-відэа (480 пкс)',
353 - 'timedmedia-derivative-desc-720_VBR.ogv' => 'Высакаякаснае Ogg-відэа для загрузкі (720p)',
354 - 'timedmedia-derivative-desc-360_560kbs.webm' => 'Паточны WebM (360p)',
355 - 'timedmedia-derivative-desc-480_900kbs.webm' => 'Паточны WebM (480p)',
356 - 'timedmedia-derivative-desc-720_VBR.webm' => 'Высакаякаснае WebM-відэа для загрузкі (720p)',
 348+ 'timedmedia-derivative-desc-160p.ogv' => 'Нізкапаточнае Ogg-відэа (160P)',
 349+ 'timedmedia-derivative-desc-360p.ogv' => 'Паточнае Ogg-відэа (360 пкс)',
 350+ 'timedmedia-derivative-desc-480p.ogv' => 'Паточнае Ogg-відэа (480 пкс)',
 351+ 'timedmedia-derivative-desc-720p.ogv' => 'Высакаякаснае Ogg-відэа для загрузкі (720p)',
 352+ 'timedmedia-derivative-desc-360p.webm' => 'Паточны WebM (360p)',
 353+ 'timedmedia-derivative-desc-480p.webm' => 'Паточны WebM (480p)',
 354+ 'timedmedia-derivative-desc-720p.webm' => 'Высакаякаснае WebM-відэа для загрузкі (720p)',
357355 'timedmedia-subtitle-language' => 'Субтытры ($2) на $1',
358356 );
359357
@@ -422,14 +420,13 @@
423421 'timedmedia-oggThumb-failed' => "N'eo ket deuet a-benn oggThumb da grouiñ ar munud.",
424422 'timedmedia-source-file' => 'Mammenn $1',
425423 'timedmedia-source-file-desc' => 'Orin $1, $2 × $3 ($4)',
426 - 'timedmedia-derivative-220_200kbs.ogv' => 'Ogg 200P',
427 - 'timedmedia-derivative-desc-220_200kbs.ogv' => 'Video Ogg izelgas (200P)',
428 - 'timedmedia-derivative-desc-360_560kbs.ogv' => 'Video Ogg lennus war-eeun war ar Gwiad (360p)',
429 - 'timedmedia-derivative-desc-480_880kbs.ogv' => 'Video Ogg lennus war-eeun war ar Gwiad (480p)',
430 - 'timedmedia-derivative-desc-720_VBR.ogv' => "Video Ogg da bellgargañ gant ur c'halite a-feson (720p)",
431 - 'timedmedia-derivative-desc-360_560kbs.webm' => 'WebM lennus war-eeun eus ar Gwiad (360p)',
432 - 'timedmedia-derivative-desc-480_900kbs.webm' => 'WebM lennus war-eeun eus ar Gwiad (480p)',
433 - 'timedmedia-derivative-desc-720_VBR.webm' => "Video WebM da bellgargañ gant ur c'halite a-feson (720p)",
 424+ 'timedmedia-derivative-desc-160p.ogv' => 'Video Ogg izelgas (160P)',
 425+ 'timedmedia-derivative-desc-360p.ogv' => 'Video Ogg lennus war-eeun war ar Gwiad (360p)',
 426+ 'timedmedia-derivative-desc-480p.ogv' => 'Video Ogg lennus war-eeun war ar Gwiad (480p)',
 427+ 'timedmedia-derivative-desc-720p.ogv' => "Video Ogg da bellgargañ gant ur c'halite a-feson (720p)",
 428+ 'timedmedia-derivative-desc-360p.webm' => 'WebM lennus war-eeun eus ar Gwiad (360p)',
 429+ 'timedmedia-derivative-desc-480p.webm' => 'WebM lennus war-eeun eus ar Gwiad (480p)',
 430+ 'timedmedia-derivative-desc-720p.webm' => "Video WebM da bellgargañ gant ur c'halite a-feson (720p)",
434431 'timedmedia-subtitle-language' => 'istitloù e $1 ($2)',
435432 );
436433
@@ -456,7 +453,6 @@
457454 'timedmedia-oggThumb-failed' => 'oggThumb nije uspio napraviti smanjeni pregled.',
458455 'timedmedia-source-file' => '$1 izvor',
459456 'timedmedia-source-file-desc' => 'Original $1, $2 × $3 ($4)',
460 - 'timedmedia-derivative-220_200kbs.ogv' => 'Ogg 200P',
461457 'timedmedia-subtitle-language' => '$1 ($2) podnaslovi',
462458 );
463459
@@ -592,14 +588,13 @@
593589 'timedmedia-reset-error' => 'Fehler beim Zurücksetzen der Umschlüsselung',
594590 'timedmedia-source-file' => 'Quelle ($1)',
595591 'timedmedia-source-file-desc' => 'Original $1, $2 x $3 ($4)',
596 - 'timedmedia-derivative-220_200kbs.ogv' => 'Ogg (200p)',
597 - 'timedmedia-derivative-desc-220_200kbs.ogv' => 'Ogg-Videodatei mit niedriger Datenübertragungsrate (200p)',
598 - 'timedmedia-derivative-desc-360_560kbs.ogv' => 'Webstreamingfähige Ogg-Videodatei (360p)',
599 - 'timedmedia-derivative-desc-480_880kbs.ogv' => 'Webstreamingfähige Ogg-Videodatei (480p)',
600 - 'timedmedia-derivative-desc-720_VBR.ogv' => 'Qualitativ hochwertige Ogg-Videodatei (720p)',
601 - 'timedmedia-derivative-desc-360_560kbs.webm' => 'Webstreamingfähige WebM-Videodatei (360p)',
602 - 'timedmedia-derivative-desc-480_900kbs.webm' => 'Webstreamingfähige WebM-Videodatei (480p)',
603 - 'timedmedia-derivative-desc-720_VBR.webm' => 'Qualitativ hochwertige WebM-Videodatei (720p)',
 592+ 'timedmedia-derivative-desc-160p.ogv' => 'Ogg-Videodatei mit niedriger Datenübertragungsrate (200p)',
 593+ 'timedmedia-derivative-desc-360p.ogv' => 'Webstreamingfähige Ogg-Videodatei (360p)',
 594+ 'timedmedia-derivative-desc-480p.ogv' => 'Webstreamingfähige Ogg-Videodatei (480p)',
 595+ 'timedmedia-derivative-desc-720p.ogv' => 'Qualitativ hochwertige Ogg-Videodatei (720p)',
 596+ 'timedmedia-derivative-desc-360p.webm' => 'Webstreamingfähige WebM-Videodatei (360p)',
 597+ 'timedmedia-derivative-desc-480p.webm' => 'Webstreamingfähige WebM-Videodatei (480p)',
 598+ 'timedmedia-derivative-desc-720p.webm' => 'Qualitativ hochwertige WebM-Videodatei (720p)',
604599 'timedmedia-subtitle-language' => '$1 ($2) Untertitel',
605600 'timedmedia-subtitle-no-video' => 'Der aktuellen Seite mit Untertiteln ist kein Video zugeordnet.',
606601 'timedmedia-subtitle-no-subtitles' => 'Derzeit gibt es keine Untertitel auf $1 für dieses Video. Zum Hinzufügen von Untertiteln kann [{{fullurl:{{FULLPAGENAME}}|action=edit}} diese Seite] bearbeitet werden.',
@@ -651,8 +646,7 @@
652647 'timedmedia-oggThumb-failed' => 'oggThumb njejo mógł wobrazk napóraś.',
653648 'timedmedia-source-file' => 'Žrědło ($1)',
654649 'timedmedia-source-file-desc' => 'Original $1, $2 x $3 ($4)',
655 - 'timedmedia-derivative-220_200kbs.ogv' => 'Ogg (200p)',
656 - 'timedmedia-derivative-desc-220_200kbs.ogv' => 'Niska šyrokosć pasma Ogg-widea (200p)',
 650+ 'timedmedia-derivative-desc-160p.ogv' => 'Niska šyrokosć pasma Ogg-widea (200p)',
657651 'timedmedia-subtitle-language' => '$1 ($2) pódtitele',
658652 );
659653
@@ -859,14 +853,13 @@
860854 'timedmedia-show-error' => 'Afficher les erreurs',
861855 'timedmedia-source-file' => 'Source $1',
862856 'timedmedia-source-file-desc' => 'Initial $1, $2 × $3 ($4)',
863 - 'timedmedia-derivative-220_200kbs.ogv' => 'Ogg 200p',
864 - 'timedmedia-derivative-desc-220_200kbs.ogv' => 'Vidéo Ogg bas débit (200P)',
865 - 'timedmedia-derivative-desc-360_560kbs.ogv' => 'Vidéo Ogg lisible en continu sur le Web (360p)',
866 - 'timedmedia-derivative-desc-480_880kbs.ogv' => 'Vidéo Ogg lisible en continu sur le web (480p)',
867 - 'timedmedia-derivative-desc-720_VBR.ogv' => 'Vidéo Ogg téléchargeable de grande qualité (720p)',
868 - 'timedmedia-derivative-desc-360_560kbs.webm' => 'WebM lisible en continu depuis le web (360p)',
869 - 'timedmedia-derivative-desc-480_900kbs.webm' => 'WebM lisible en continu depuis le web (480p)',
870 - 'timedmedia-derivative-desc-720_VBR.webm' => 'Vidéo WebM téléchargeable de grande qualité (720p)',
 857+ 'timedmedia-derivative-desc-160p.ogv' => 'Vidéo Ogg bas débit (160P)',
 858+ 'timedmedia-derivative-desc-360p.ogv' => 'Vidéo Ogg lisible en continu sur le Web (360p)',
 859+ 'timedmedia-derivative-desc-480p.ogv' => 'Vidéo Ogg lisible en continu sur le web (480p)',
 860+ 'timedmedia-derivative-desc-720p.ogv' => 'Vidéo Ogg téléchargeable de grande qualité (720p)',
 861+ 'timedmedia-derivative-desc-360p.webm' => 'WebM lisible en continu depuis le web (360p)',
 862+ 'timedmedia-derivative-desc-480p.webm' => 'WebM lisible en continu depuis le web (480p)',
 863+ 'timedmedia-derivative-desc-720p.webm' => 'Vidéo WebM téléchargeable de grande qualité (720p)',
871864 'timedmedia-subtitle-language' => 'soustitres en $1 ($2)',
872865 'timedmedia-subtitle-no-video' => 'Il n’y a aucune vidéo associée à la page actuelle de sous-titre',
873866 'timedmedia-subtitle-no-subtitles' => "Il n'y a actuellement aucun sous-titres en $1 pour cette vidéo, vous pouvez [{{fullurl: {{FULLPAGENAME}} | action=edit}} modifier cette page] pour les ajouter",
@@ -909,7 +902,6 @@
910903 'timedmedia-show-error' => 'Fâre vêre les èrrors',
911904 'timedmedia-source-file' => 'Sôrsa $1',
912905 'timedmedia-source-file-desc' => 'Originâl $1, $2 × $3 ($4)',
913 - 'timedmedia-derivative-220_200kbs.ogv' => 'Ogg 200p',
914906 'timedmedia-subtitle-language' => 'sot-titros en $1 ($2)',
915907 );
916908
@@ -994,14 +986,13 @@
995987 'timedmedia-reset-error' => 'Erro no restablecemento do traballo de transcodificación',
996988 'timedmedia-source-file' => 'Fonte $1',
997989 'timedmedia-source-file-desc' => 'Orixinal $1, $2 × $3 ($4)',
998 - 'timedmedia-derivative-220_200kbs.ogv' => 'Ogg 200P',
999 - 'timedmedia-derivative-desc-220_200kbs.ogv' => 'Vídeo Ogg de baixo ancho de banda (200P)',
1000 - 'timedmedia-derivative-desc-360_560kbs.ogv' => 'Vídeo Ogg para a web (360P)',
1001 - 'timedmedia-derivative-desc-480_880kbs.ogv' => 'Vídeo Ogg para a web (480P)',
1002 - 'timedmedia-derivative-desc-720_VBR.ogv' => 'Vídeo Ogg de alta calidade que se pode descargar (720P)',
1003 - 'timedmedia-derivative-desc-360_560kbs.webm' => 'WebM para a web (360P)',
1004 - 'timedmedia-derivative-desc-480_900kbs.webm' => 'WebM para a web (480P)',
1005 - 'timedmedia-derivative-desc-720_VBR.webm' => 'WebM de alta calidade que se pode descargar (720P)',
 990+ 'timedmedia-derivative-desc-160p.ogv' => 'Vídeo Ogg de baixo ancho de banda (160P)',
 991+ 'timedmedia-derivative-desc-360p.ogv' => 'Vídeo Ogg para a web (360P)',
 992+ 'timedmedia-derivative-desc-480p.ogv' => 'Vídeo Ogg para a web (480P)',
 993+ 'timedmedia-derivative-desc-720p.ogv' => 'Vídeo Ogg de alta calidade que se pode descargar (720P)',
 994+ 'timedmedia-derivative-desc-360p.webm' => 'WebM para a web (360P)',
 995+ 'timedmedia-derivative-desc-480p.webm' => 'WebM para a web (480P)',
 996+ 'timedmedia-derivative-desc-720p.webm' => 'WebM de alta calidade que se pode descargar (720P)',
1006997 'timedmedia-subtitle-language' => 'Subtítulos en $1 ($2)',
1007998 'timedmedia-subtitle-no-video' => 'Non hai ningún vídeo asociado coa páxina de subtítulos actual',
1008999 'timedmedia-subtitle-no-subtitles' => 'Actualmente non hai subtítulos en $1 para este vídeo; pode [{{fullurl:{{FULLPAGENAME}}|action=edit}} editar esta páxina] para engadilos',
@@ -1102,14 +1093,13 @@
11031094 'timedmedia-reset-error' => 'שגיאה באתחול משימת המרה מחדש',
11041095 'timedmedia-source-file' => 'ממקור $1',
11051096 'timedmedia-source-file-desc' => '$1 מקורי, $2 × $3‏ ($4)',
1106 - 'timedmedia-derivative-220_200kbs.ogv' => 'Ogg 200P',
1107 - 'timedmedia-derivative-desc-220_200kbs.ogv' => 'וידאו Ogg (200P)‎ לרוחב פס נמוך',
1108 - 'timedmedia-derivative-desc-360_560kbs.ogv' => 'וידאו Ogg (360P)‎ לנגינה שוטפת מהרשת',
1109 - 'timedmedia-derivative-desc-480_880kbs.ogv' => 'וידאו Ogg (480P)‎ לנגינה שוטפת מהרשת',
1110 - 'timedmedia-derivative-desc-720_VBR.ogv' => 'וידאו Ogg (720P)‎ באיכות גבוהה שניתן להורדה',
1111 - 'timedmedia-derivative-desc-360_560kbs.webm' => 'WebM ניתן לשידור שטף ברשת (360P)',
1112 - 'timedmedia-derivative-desc-480_900kbs.webm' => 'וידאו WebM (480P)‎ לנגינה שוטפת מהרשת',
1113 - 'timedmedia-derivative-desc-720_VBR.webm' => 'וידאו WebM (720P)‎ באיכות גבוהה שניתן להורדה',
 1097+ 'timedmedia-derivative-desc-160p.ogv' => 'וידאו Ogg (160P)‎ לרוחב פס נמוך',
 1098+ 'timedmedia-derivative-desc-360p.ogv' => 'וידאו Ogg (360P)‎ לנגינה שוטפת מהרשת',
 1099+ 'timedmedia-derivative-desc-480p.ogv' => 'וידאו Ogg (480P)‎ לנגינה שוטפת מהרשת',
 1100+ 'timedmedia-derivative-desc-720p.ogv' => 'וידאו Ogg (720P)‎ באיכות גבוהה שניתן להורדה',
 1101+ 'timedmedia-derivative-desc-360p.webm' => 'WebM ניתן לשידור שטף ברשת (360P)',
 1102+ 'timedmedia-derivative-desc-480p.webm' => 'וידאו WebM (480P)‎ לנגינה שוטפת מהרשת',
 1103+ 'timedmedia-derivative-desc-720p.webm' => 'וידאו WebM (720P)‎ באיכות גבוהה שניתן להורדה',
11141104 'timedmedia-subtitle-language' => 'כתוביות ב$1‏ ($2)',
11151105 'timedmedia-subtitle-no-video' => 'אין וידאו שמשויך לדף הכתוביות הנוכחי',
11161106 'timedmedia-subtitle-no-subtitles' => 'אין כעת כתוביות עבור השפה הבאה: $1. אפשר [{{fullurl:{{FULLPAGENAME}}|action=edit}} לערוך את הדף הזה] ולהוסיף אותן',
@@ -1185,14 +1175,13 @@
11861176 'timedmedia-oggThumb-failed' => 'oggThumb njemóžeše wobrazk wutworić.',
11871177 'timedmedia-source-file' => 'Žórło ($1)',
11881178 'timedmedia-source-file-desc' => 'Originalny $1, $2 x $3 ($4)',
1189 - 'timedmedia-derivative-220_200kbs.ogv' => 'Ogg (200p)',
1190 - 'timedmedia-derivative-desc-220_200kbs.ogv' => 'Ogg-widejo z niskej šěrokosću pasma (200p)',
1191 - 'timedmedia-derivative-desc-360_560kbs.ogv' => 'Ogg-widejo (360p), kotrež da so přez Web přenjesć',
1192 - 'timedmedia-derivative-desc-480_880kbs.ogv' => 'Ogg-widejo (480p), kotrež da so přez Web přenjesć',
1193 - 'timedmedia-derivative-desc-720_VBR.ogv' => 'Sćahujomne Ogg-widejo wysokeje kwality (720p)',
1194 - 'timedmedia-derivative-desc-360_560kbs.webm' => 'Web streamable WebM (360P)',
1195 - 'timedmedia-derivative-desc-480_900kbs.webm' => 'WebM-widejo (480p), kotrež da so přez Web přenjesć',
1196 - 'timedmedia-derivative-desc-720_VBR.webm' => 'Sćahujomna WebM-dataja wysokeje kwality (720p)',
 1179+ 'timedmedia-derivative-desc-160p.ogv' => 'Ogg-widejo z niskej šěrokosću pasma (200p)',
 1180+ 'timedmedia-derivative-desc-360p.ogv' => 'Ogg-widejo (360p), kotrež da so přez Web přenjesć',
 1181+ 'timedmedia-derivative-desc-480p.ogv' => 'Ogg-widejo (480p), kotrež da so přez Web přenjesć',
 1182+ 'timedmedia-derivative-desc-720p.ogv' => 'Sćahujomne Ogg-widejo wysokeje kwality (720p)',
 1183+ 'timedmedia-derivative-desc-360p.webm' => 'Web streamable WebM (360P)',
 1184+ 'timedmedia-derivative-desc-480p.webm' => 'WebM-widejo (480p), kotrež da so přez Web přenjesć',
 1185+ 'timedmedia-derivative-desc-720p.webm' => 'Sćahujomna WebM-dataja wysokeje kwality (720p)',
11971186 'timedmedia-subtitle-language' => '$1 ($2) podtitule',
11981187 );
11991188
@@ -1221,10 +1210,9 @@
12221211 'timedmedia-oggThumb-version' => 'Az OggHandlerhez $1 vagy későbbi verziójú oggThumb szükséges.',
12231212 'timedmedia-oggThumb-failed' => 'Az oggThumb nem tudta elkészíteni a bélyegképet.',
12241213 'timedmedia-source-file-desc' => 'Eredeti $1, $2 × $3 ($4)',
1225 - 'timedmedia-derivative-220_200kbs.ogv' => 'Ogg 200P',
1226 - 'timedmedia-derivative-desc-220_200kbs.ogv' => 'Alacsony sávszélességű Ogg videó (200P)',
1227 - 'timedmedia-derivative-desc-720_VBR.ogv' => 'Magas minőségű, letölthető Ogg videó (720P)',
1228 - 'timedmedia-derivative-desc-720_VBR.webm' => 'Magas minőségű, letölthető WebM (720P)',
 1214+ 'timedmedia-derivative-desc-160p.ogv' => 'Alacsony sávszélességű Ogg videó (160P)',
 1215+ 'timedmedia-derivative-desc-720p.ogv' => 'Magas minőségű, letölthető Ogg videó (720P)',
 1216+ 'timedmedia-derivative-desc-720p.webm' => 'Magas minőségű, letölthető WebM (720P)',
12291217 );
12301218
12311219 /** Interlingua (Interlingua)
@@ -1278,14 +1266,13 @@
12791267 'timedmedia-reset-error' => 'Error durante le reinitialisation del action de transcodification',
12801268 'timedmedia-source-file' => 'original $1',
12811269 'timedmedia-source-file-desc' => 'Original $1, $2 × $3 ($4)',
1282 - 'timedmedia-derivative-220_200kbs.ogv' => 'Ogg 200P',
1283 - 'timedmedia-derivative-desc-220_200kbs.ogv' => 'Video Ogg a basse largor de banda (200P)',
1284 - 'timedmedia-derivative-desc-360_560kbs.ogv' => 'Video Ogg fluibile per web (360P)',
1285 - 'timedmedia-derivative-desc-480_880kbs.ogv' => 'Video Ogg fluibile per web (480P)',
1286 - 'timedmedia-derivative-desc-720_VBR.ogv' => 'Video Ogg discargabile de alte qualitate (720P)',
1287 - 'timedmedia-derivative-desc-360_560kbs.webm' => 'WebM fluibile per web (360P)',
1288 - 'timedmedia-derivative-desc-480_900kbs.webm' => 'WebM fluibile per web (480P)',
1289 - 'timedmedia-derivative-desc-720_VBR.webm' => 'WebM discargabile de alte qualitate (720P)',
 1270+ 'timedmedia-derivative-desc-160p.ogv' => 'Video Ogg a basse largor de banda (160P)',
 1271+ 'timedmedia-derivative-desc-360p.ogv' => 'Video Ogg fluibile per web (360P)',
 1272+ 'timedmedia-derivative-desc-480p.ogv' => 'Video Ogg fluibile per web (480P)',
 1273+ 'timedmedia-derivative-desc-720p.ogv' => 'Video Ogg discargabile de alte qualitate (720P)',
 1274+ 'timedmedia-derivative-desc-360p.webm' => 'WebM fluibile per web (360P)',
 1275+ 'timedmedia-derivative-desc-480p.webm' => 'WebM fluibile per web (480P)',
 1276+ 'timedmedia-derivative-desc-720p.webm' => 'WebM discargabile de alte qualitate (720P)',
12901277 'timedmedia-subtitle-language' => '$1 ($2) subtitulos',
12911278 'timedmedia-subtitle-no-video' => 'Il non ha video associate con le actual pagina de subtitulos',
12921279 'timedmedia-subtitle-no-subtitles' => 'Il ha actualmente nulle subtitulos in $1 pro iste video. Tu pote [{{fullurl:{{FULLPAGENAME}}|action=edit}} modificar iste pagina] pro adder los.',
@@ -1321,14 +1308,13 @@
13221309 'timedmedia-oggThumb-failed' => 'oggThumb gagal membuat miniatur gambar.',
13231310 'timedmedia-source-file' => 'Sumber $1',
13241311 'timedmedia-source-file-desc' => '$1 asli, $2 × $3 ($4)',
1325 - 'timedmedia-derivative-220_200kbs.ogv' => 'Ogg 200P',
1326 - 'timedmedia-derivative-desc-220_200kbs.ogv' => 'Video Ogg lebar pita rendah (200P)',
1327 - 'timedmedia-derivative-desc-360_560kbs.ogv' => 'Video Ogg aliran web (360P)',
1328 - 'timedmedia-derivative-desc-480_880kbs.ogv' => 'Video Ogg aliran web (480P)',
1329 - 'timedmedia-derivative-desc-720_VBR.ogv' => 'Video Ogg unduhan berkualitas tinggi (720P)',
1330 - 'timedmedia-derivative-desc-360_560kbs.webm' => 'WebM aliran web (360P)',
1331 - 'timedmedia-derivative-desc-480_900kbs.webm' => 'WebM aliran web (480P)',
1332 - 'timedmedia-derivative-desc-720_VBR.webm' => 'WebM unduhan berkualitas tinggi (720P)',
 1312+ 'timedmedia-derivative-desc-160p.ogv' => 'Video Ogg lebar pita rendah (160P)',
 1313+ 'timedmedia-derivative-desc-360p.ogv' => 'Video Ogg aliran web (360P)',
 1314+ 'timedmedia-derivative-desc-480p.ogv' => 'Video Ogg aliran web (480P)',
 1315+ 'timedmedia-derivative-desc-720p.ogv' => 'Video Ogg unduhan berkualitas tinggi (720P)',
 1316+ 'timedmedia-derivative-desc-360p.webm' => 'WebM aliran web (360P)',
 1317+ 'timedmedia-derivative-desc-480p.webm' => 'WebM aliran web (480P)',
 1318+ 'timedmedia-derivative-desc-720p.webm' => 'WebM unduhan berkualitas tinggi (720P)',
13331319 'timedmedia-subtitle-language' => 'Teks film $1 ($2)',
13341320 'timedmedia-subtitle-no-video' => 'Tidak ada video yang terkait dengan halaman subjudul ini',
13351321 'timedmedia-subtitle-no-subtitles' => 'Saat ini tidak ada subjudul $1 untuk video ini. Anda dapat [{{fullurl: {{FULLPAGENAME}}|action = edit}} menyunting halaman ini] untuk menambahkannya',
@@ -1588,14 +1574,13 @@
15891575 'timedmedia-oggThumb-failed' => '<code lang="en">oggThumb</code> kunnt kei MiniBelldsche maache.',
15901576 'timedmedia-source-file' => 'Quell-Dattei em $1-Fommaat',
15911577 'timedmedia-source-file-desc' => 'Ojinaal $1-Dattei, $2 × $3 ($4)',
1592 - 'timedmedia-derivative-220_200kbs.ogv' => 'En Viddejo-Dattei em OGG-Fommaat met 720p',
1593 - 'timedmedia-derivative-desc-220_200kbs.ogv' => 'En Viddejo-Dattei met winnesch Bandbreide (200P) em <i lang="en">Ogg</i>-Fommaat',
1594 - 'timedmedia-derivative-desc-360_560kbs.ogv' => 'En Viddejo-Dattei em <i lang="en">Ogg</i>-Fommaat (360p) för ene Dahteshtrohm övver et Nez',
1595 - 'timedmedia-derivative-desc-480_880kbs.ogv' => 'En Viddejo-Dattei (met 480p) em <i lang="en">Ogg</i>-Fommaat för ene Dahteshtrohm övver et Nez',
1596 - 'timedmedia-derivative-desc-720_VBR.ogv' => 'En Viddejo-Dattei met huhe Qualiteit (met 720p) em <i lang="en">Ogg</i>-Fommaat zom eronger laade',
1597 - 'timedmedia-derivative-desc-360_560kbs.webm' => 'Ene WebM Viddejo (met 360p) för ene Dahteshtrohm övver et Nez',
1598 - 'timedmedia-derivative-desc-480_900kbs.webm' => 'Ene WebM Viddejo (met 480p) för ene Dahteshtrohm övver et Nez',
1599 - 'timedmedia-derivative-desc-720_VBR.webm' => 'En <i lang="en">WebM</i> Viddejo-Dattei met huhe Qualiteit (met 720p) zom eronger laade',
 1578+ 'timedmedia-derivative-desc-160p.ogv' => 'En Viddejo-Dattei met winnesch Bandbreide (160P) em <i lang="en">Ogg</i>-Fommaat',
 1579+ 'timedmedia-derivative-desc-360p.ogv' => 'En Viddejo-Dattei em <i lang="en">Ogg</i>-Fommaat (360p) för ene Dahteshtrohm övver et Nez',
 1580+ 'timedmedia-derivative-desc-480p.ogv' => 'En Viddejo-Dattei (met 480p) em <i lang="en">Ogg</i>-Fommaat för ene Dahteshtrohm övver et Nez',
 1581+ 'timedmedia-derivative-desc-720p.ogv' => 'En Viddejo-Dattei met huhe Qualiteit (met 720p) em <i lang="en">Ogg</i>-Fommaat zom eronger laade',
 1582+ 'timedmedia-derivative-desc-360p.webm' => 'Ene WebM Viddejo (met 360p) för ene Dahteshtrohm övver et Nez',
 1583+ 'timedmedia-derivative-desc-480p.webm' => 'Ene WebM Viddejo (met 480p) för ene Dahteshtrohm övver et Nez',
 1584+ 'timedmedia-derivative-desc-720p.webm' => 'En <i lang="en">WebM</i> Viddejo-Dattei met huhe Qualiteit (met 720p) zom eronger laade',
16001585 'timedmedia-subtitle-language' => 'Ongertittele en $1 ($2)',
16011586 );
16021587
@@ -1737,19 +1722,18 @@
17381723 'timedmedia-reset-error' => 'Грешка при враќањето одново на задачата за транскодирање',
17391724 'timedmedia-source-file' => 'Извор на $1',
17401725 'timedmedia-source-file-desc' => 'Изворен $1, $2 × $3 ($4)',
1741 - 'timedmedia-derivative-220_200kbs.ogv' => 'Ogg 200P',
1742 - 'timedmedia-derivative-desc-220_200kbs.ogv' => 'Нископропусно Ogg-видео (200п)',
1743 - 'timedmedia-derivative-360_560kbs.ogv' => 'Ogg 360п',
1744 - 'timedmedia-derivative-desc-360_560kbs.ogv' => 'Ogg-видео за емитување (360 пиксели)',
1745 - 'timedmedia-derivative-480_880kbs.ogv' => 'Ogg 480п',
1746 - 'timedmedia-derivative-desc-480_880kbs.ogv' => 'Ogg-видео за емитување (480 пиксели)',
1747 - 'timedmedia-derivative-desc-720_VBR.ogv' => 'Висококвалитетно Ogg-видео (720 пиксели)',
1748 - 'timedmedia-derivative-360_560kbs.webm' => 'WebM 360п',
1749 - 'timedmedia-derivative-desc-360_560kbs.webm' => 'WebM за каналско емитување (360п)',
1750 - 'timedmedia-derivative-480_900kbs.webm' => 'Висококвалитетен WebM за преземање (720п)',
1751 - 'timedmedia-derivative-desc-480_900kbs.webm' => 'Висококвалитетен WebM за преземање (720п)',
 1726+ 'timedmedia-derivative-desc-160p.ogv' => 'Нископропусно Ogg-видео (200п)',
 1727+ 'timedmedia-derivative-360p.ogv' => 'Ogg 360п',
 1728+ 'timedmedia-derivative-desc-360p.ogv' => 'Ogg-видео за емитување (360 пиксели)',
 1729+ 'timedmedia-derivative-480p.ogv' => 'Ogg 480п',
 1730+ 'timedmedia-derivative-desc-480p.ogv' => 'Ogg-видео за емитување (480 пиксели)',
 1731+ 'timedmedia-derivative-desc-720p.ogv' => 'Висококвалитетно Ogg-видео (720 пиксели)',
 1732+ 'timedmedia-derivative-360p.webm' => 'WebM 360п',
 1733+ 'timedmedia-derivative-desc-360p.webm' => 'WebM за каналско емитување (360п)',
 1734+ 'timedmedia-derivative-480p.webm' => 'Висококвалитетен WebM за преземање (720п)',
 1735+ 'timedmedia-derivative-desc-480p.webm' => 'Висококвалитетен WebM за преземање (720п)',
17521736 'timedmedia-derivative-720_VBR.webm' => 'WebM 720п',
1753 - 'timedmedia-derivative-desc-720_VBR.webm' => 'Висококвалитетен WebM за преземање (720п)',
 1737+ 'timedmedia-derivative-desc-720p.webm' => 'Висококвалитетен WebM за преземање (720п)',
17541738 'timedmedia-subtitle-language' => '$1 ($2) титлови',
17551739 'timedmedia-subtitle-no-video' => 'Нема видеоснимка поврзана со тековната страница со титлови',
17561740 'timedmedia-subtitle-no-subtitles' => 'Моментално нема $1 титлови за оваа видеоснимка. Можете да ги додадете [{{fullurl:{{FULLPAGENAME}}|action=edit}} уредувајќи ја страницава]',
@@ -1925,18 +1909,17 @@
19261910 'timedmedia-reset-error' => 'Er is een fout opgetreden tijdens het opnieuw instellen van de transcoderingstaak.',
19271911 'timedmedia-source-file' => 'Bron van $1',
19281912 'timedmedia-source-file-desc' => 'Origineel $1, $2 × $3 ($4)',
1929 - 'timedmedia-derivative-220_200kbs.ogv' => 'Ogg 200P',
1930 - 'timedmedia-derivative-desc-220_200kbs.ogv' => 'Lage bandbreedte Ogg video (200P)',
1931 - 'timedmedia-derivative-360_560kbs.ogv' => 'Ogg 360P',
1932 - 'timedmedia-derivative-desc-360_560kbs.ogv' => 'Te webstreamen Off video (360P)',
1933 - 'timedmedia-derivative-480_880kbs.ogv' => 'Ogg 480P',
1934 - 'timedmedia-derivative-desc-480_880kbs.ogv' => 'Te webstreamen Ogg video (480P)',
1935 - 'timedmedia-derivative-desc-720_VBR.ogv' => 'Hoge kwaliteit downloadbare Ogg video (720P)',
1936 - 'timedmedia-derivative-360_560kbs.webm' => 'WebM 360P',
1937 - 'timedmedia-derivative-desc-360_560kbs.webm' => 'Web streamable WebM (360P)',
1938 - 'timedmedia-derivative-480_900kbs.webm' => 'WebM 480P',
1939 - 'timedmedia-derivative-desc-480_900kbs.webm' => 'Via web te streamen WebM (480P)',
1940 - 'timedmedia-derivative-desc-720_VBR.webm' => 'Hoge kwaliteit downloadbare WebM (720P)',
 1913+ 'timedmedia-derivative-desc-160p.ogv' => 'Lage bandbreedte Ogg video (160P)',
 1914+ 'timedmedia-derivative-360p.ogv' => 'Ogg 360P',
 1915+ 'timedmedia-derivative-desc-360p.ogv' => 'Te webstreamen Off video (360P)',
 1916+ 'timedmedia-derivative-480p.ogv' => 'Ogg 480P',
 1917+ 'timedmedia-derivative-desc-480p.ogv' => 'Te webstreamen Ogg video (480P)',
 1918+ 'timedmedia-derivative-desc-720p.ogv' => 'Hoge kwaliteit downloadbare Ogg video (720P)',
 1919+ 'timedmedia-derivative-360p.webm' => 'WebM 360P',
 1920+ 'timedmedia-derivative-desc-360p.webm' => 'Web streamable WebM (360P)',
 1921+ 'timedmedia-derivative-480p.webm' => 'WebM 480P',
 1922+ 'timedmedia-derivative-desc-480p.webm' => 'Via web te streamen WebM (480P)',
 1923+ 'timedmedia-derivative-desc-720p.webm' => 'Hoge kwaliteit downloadbare WebM (720P)',
19411924 'timedmedia-subtitle-language' => 'Ondertitels in $1 ($2)',
19421925 'timedmedia-subtitle-no-video' => 'Er is geen video gekoppeld aan de huidige ondertitelpagina',
19431926 'timedmedia-subtitle-no-subtitles' => 'Er zijn op het moment geen ondertitels in het $1 voor deze video. U kunt [{{fullurl:{{FULLPAGENAME}}|action=edit}} deze pagina bewerken] om ze toe te voegen',
@@ -1990,14 +1973,13 @@
19911974 'timedmedia-oggThumb-failed' => 'oggThumb klarte ikke å opprette miniatyrbildet.',
19921975 'timedmedia-source-file' => '$1 kilde',
19931976 'timedmedia-source-file-desc' => 'Original $1, $2 × $3 ($4)',
1994 - 'timedmedia-derivative-220_200kbs.ogv' => 'Ogg 200P',
1995 - 'timedmedia-derivative-desc-220_200kbs.ogv' => 'Lav båndbredde Ogg-video (200P)',
1996 - 'timedmedia-derivative-desc-360_560kbs.ogv' => 'Nett-strømbar Ogg-video (360P)',
1997 - 'timedmedia-derivative-desc-480_880kbs.ogv' => 'Nett-strømbar Ogg-video (480P)',
1998 - 'timedmedia-derivative-desc-720_VBR.ogv' => 'Høykvalitets nedlastbar Ogg-video (720P)',
1999 - 'timedmedia-derivative-desc-360_560kbs.webm' => 'Nett-strømbar WebM (360P)',
2000 - 'timedmedia-derivative-desc-480_900kbs.webm' => 'Nett-strømbar WebM (480P)',
2001 - 'timedmedia-derivative-desc-720_VBR.webm' => 'Høykvalitets nedlastbar WebM (720P)',
 1977+ 'timedmedia-derivative-desc-160p.ogv' => 'Lav båndbredde Ogg-video (160P)',
 1978+ 'timedmedia-derivative-desc-360p.ogv' => 'Nett-strømbar Ogg-video (360P)',
 1979+ 'timedmedia-derivative-desc-480p.ogv' => 'Nett-strømbar Ogg-video (480P)',
 1980+ 'timedmedia-derivative-desc-720p.ogv' => 'Høykvalitets nedlastbar Ogg-video (720P)',
 1981+ 'timedmedia-derivative-desc-360p.webm' => 'Nett-strømbar WebM (360P)',
 1982+ 'timedmedia-derivative-desc-480p.webm' => 'Nett-strømbar WebM (480P)',
 1983+ 'timedmedia-derivative-desc-720p.webm' => 'Høykvalitets nedlastbar WebM (720P)',
20021984 'timedmedia-subtitle-language' => '$1 ($2) undertekster',
20031985 );
20041986
@@ -2096,14 +2078,13 @@
20972079 'timedmedia-oggThumb-failed' => "oggThumb a l'ha falì a creé la figurin-a.",
20982080 'timedmedia-source-file' => '$1 sorziss',
20992081 'timedmedia-source-file-desc' => 'Original $1, $2 × $3 ($4)',
2100 - 'timedmedia-derivative-220_200kbs.ogv' => 'Ogg 200P',
2101 - 'timedmedia-derivative-desc-220_200kbs.ogv' => 'Larghëssa ëd banda bassa Ogg video (200P)',
2102 - 'timedmedia-derivative-desc-360_560kbs.ogv' => 'Web streamable Ogg video (360P)',
2103 - 'timedmedia-derivative-desc-480_880kbs.ogv' => 'Web streamable Ogg video (480P)',
2104 - 'timedmedia-derivative-desc-720_VBR.ogv' => "Dëscariàbil d'àuta qualità Ogg video (720P)",
2105 - 'timedmedia-derivative-desc-360_560kbs.webm' => 'Web streamable WebM (360P)',
2106 - 'timedmedia-derivative-desc-480_900kbs.webm' => 'Web streamable WebM (480P)',
2107 - 'timedmedia-derivative-desc-720_VBR.webm' => "Dëscariàbil d'àuta qualità WebM (720P)",
 2082+ 'timedmedia-derivative-desc-160p.ogv' => 'Larghëssa ëd banda bassa Ogg video (160P)',
 2083+ 'timedmedia-derivative-desc-360p.ogv' => 'Web streamable Ogg video (360P)',
 2084+ 'timedmedia-derivative-desc-480p.ogv' => 'Web streamable Ogg video (480P)',
 2085+ 'timedmedia-derivative-desc-720p.ogv' => "Dëscariàbil d'àuta qualità Ogg video (720P)",
 2086+ 'timedmedia-derivative-desc-360p.webm' => 'Web streamable WebM (360P)',
 2087+ 'timedmedia-derivative-desc-480p.webm' => 'Web streamable WebM (480P)',
 2088+ 'timedmedia-derivative-desc-720p.webm' => "Dëscariàbil d'àuta qualità WebM (720P)",
21082089 'timedmedia-subtitle-language' => '$1 ($2) sot-tìtoj',
21092090 );
21102091
@@ -2176,14 +2157,13 @@
21772158 'timedmedia-reset-error' => 'Ocorreu um erro ao reiniciar a tarefa de transcodificação',
21782159 'timedmedia-source-file' => 'Fonte $1',
21792160 'timedmedia-source-file-desc' => 'Original $1, $2 × $3 ($4)',
2180 - 'timedmedia-derivative-220_200kbs.ogv' => 'Ogg 200P',
2181 - 'timedmedia-derivative-desc-220_200kbs.ogv' => 'Vídeo Ogg de baixa largura de banda (200P)',
2182 - 'timedmedia-derivative-desc-360_560kbs.ogv' => 'Vídeo Ogg para web streaming (360P)',
2183 - 'timedmedia-derivative-desc-480_880kbs.ogv' => 'Vídeo Ogg para web streaming (480P)',
2184 - 'timedmedia-derivative-desc-720_VBR.ogv' => 'Vídeo Ogg de alta qualidade para download (720 P)',
2185 - 'timedmedia-derivative-desc-360_560kbs.webm' => 'WebM para web streaming (360P)',
2186 - 'timedmedia-derivative-desc-480_900kbs.webm' => 'WebM para web streaming (480P)',
2187 - 'timedmedia-derivative-desc-720_VBR.webm' => 'WebM de alta qualidade para download (720P)',
 2161+ 'timedmedia-derivative-desc-160p.ogv' => 'Vídeo Ogg de baixa largura de banda (160P)',
 2162+ 'timedmedia-derivative-desc-360p.ogv' => 'Vídeo Ogg para web streaming (360P)',
 2163+ 'timedmedia-derivative-desc-480p.ogv' => 'Vídeo Ogg para web streaming (480P)',
 2164+ 'timedmedia-derivative-desc-720p.ogv' => 'Vídeo Ogg de alta qualidade para download (720 P)',
 2165+ 'timedmedia-derivative-desc-360p.webm' => 'WebM para web streaming (360P)',
 2166+ 'timedmedia-derivative-desc-480p.webm' => 'WebM para web streaming (480P)',
 2167+ 'timedmedia-derivative-desc-720p.webm' => 'WebM de alta qualidade para download (720P)',
21882168 'timedmedia-subtitle-language' => 'Legendas em $1 ($2)',
21892169 'timedmedia-subtitle-no-video' => 'Não existe nenhum vídeo associado à actual página de legendas',
21902170 'timedmedia-subtitle-no-subtitles' => 'Neste momento não existem legendas em $1 para este vídeo. Pode [{{fullurl:{{FULLPAGENAME}}|action=edit}} editar a página] e adicioná-las.',
@@ -2392,14 +2372,13 @@
23932373 'timedmedia-oggThumb-failed' => 'oggThumb ni uspel ustvariti predogledne sličice.',
23942374 'timedmedia-source-file' => 'vir $1',
23952375 'timedmedia-source-file-desc' => 'Izvirnik $1, $2 × $3 ($4)',
2396 - 'timedmedia-derivative-220_200kbs.ogv' => 'Ogg 200P',
2397 - 'timedmedia-derivative-desc-220_200kbs.ogv' => 'Video Ogg za majhno pasovno širino (200P)',
2398 - 'timedmedia-derivative-desc-360_560kbs.ogv' => 'Video Ogg za pretakanje preko spleta (360P)',
2399 - 'timedmedia-derivative-desc-480_880kbs.ogv' => 'Video Ogg za pretakanje preko spleta (480P)',
2400 - 'timedmedia-derivative-desc-720_VBR.ogv' => 'Visoko ločljivostni video Ogg za prenos (720P)',
2401 - 'timedmedia-derivative-desc-360_560kbs.webm' => 'WebM za pretakanje preko spleta (360P)',
2402 - 'timedmedia-derivative-desc-480_900kbs.webm' => 'WebM za pretakanje preko spleta (480P)',
2403 - 'timedmedia-derivative-desc-720_VBR.webm' => 'Visokokakovostni WebM za prenos (720P)',
 2376+ 'timedmedia-derivative-desc-160p.ogv' => 'Video Ogg za majhno pasovno širino (160P)',
 2377+ 'timedmedia-derivative-desc-360p.ogv' => 'Video Ogg za pretakanje preko spleta (360P)',
 2378+ 'timedmedia-derivative-desc-480p.ogv' => 'Video Ogg za pretakanje preko spleta (480P)',
 2379+ 'timedmedia-derivative-desc-720p.ogv' => 'Visoko ločljivostni video Ogg za prenos (720P)',
 2380+ 'timedmedia-derivative-desc-360p.webm' => 'WebM za pretakanje preko spleta (360P)',
 2381+ 'timedmedia-derivative-desc-480p.webm' => 'WebM za pretakanje preko spleta (480P)',
 2382+ 'timedmedia-derivative-desc-720p.webm' => 'Visokokakovostni WebM za prenos (720P)',
24042383 'timedmedia-subtitle-language' => 'podnapisi v jeziku $1 ($2)',
24052384 'timedmedia-subtitle-no-video' => 'S trenutno podnaslovno stranjo ni povezan noben videoposnetek',
24062385 'timedmedia-subtitle-no-subtitles' => 'V jeziku $1 trenutno ni nobenih podnapisov za ta video; lahko [{{fullurl:{{FULLPAGENAME}}|action=edit}} uredite to stran] in jih dodate',
@@ -2623,8 +2602,7 @@
26242603 'timedmedia-oggThumb-failed' => 'Nabigong lumikha ang oggThumb ng munting larawan.',
26252604 'timedmedia-source-file' => '$1 pinagkukunan',
26262605 'timedmedia-source-file-desc' => 'Orihinal na $1, $2 × $3 ( $4)',
2627 - 'timedmedia-derivative-220_200kbs.ogv' => 'Ogg 200P',
2628 - 'timedmedia-derivative-desc-720_VBR.webm' => 'May mataas na uring WebM na maikakargang paibaba (720P)',
 2606+ 'timedmedia-derivative-desc-720p.webm' => 'May mataas na uring WebM na maikakargang paibaba (720P)',
26292607 'timedmedia-subtitle-language' => '$1 ($2) kabahaging mga pamagat',
26302608 );
26312609
Index: trunk/extensions/TimedMediaHandler/WebVideoTranscode/WebVideoTranscodeJob.php
@@ -296,12 +296,9 @@
297297 } else {
298298 $aspectRatio = $file->getWidth() . ':' . $file->getHeight();
299299 }
300 - // First check targetSize
301 - if( isset( $options['targetSize'] ) ){
302 - list( $width, $height ) = WebVideoTranscode::getTargetSizeTransform( $file, $options['targetSize'] );
303 - $cmd.= ' -s ' . intval( $width ) . 'x' . intval( $height );
304 - } elseif (isset( $options['maxSize'] ) && intval( $options['maxSize'] ) > 0) {
 300+ if (isset( $options['maxSize'] )) {
305301 // Get size transform ( if maxSize is > file, file size is used:
 302+
306303 list( $width, $height ) = WebVideoTranscode::getMaxSizeTransform( $file, $options['maxSize'] );
307304 $cmd.= ' -s ' . intval( $width ) . 'x' . intval( $height );
308305 } elseif (
@@ -369,12 +366,11 @@
370367
371368 $file = wfLocalFile( $this->title );
372369
373 - // Check special case options like targetSize
374 - if( isset( $options['targetSize'] ) ){
375 - list( $width, $height ) = WebVideoTranscode::getTargetSizeTransform( $file, $options['targetSize'] );
 370+ if( isset( $options['maxSize'] ) ){
 371+ list( $width, $height ) = WebVideoTranscode::getMaxSizeTransform( $file, $options['maxSize'] );
376372 $options['width'] = $width;
377373 $options['height'] = $height;
378 - unset( $options['targetSize'] );
 374+ $options['aspect'] = $width . ':' . $height;
379375 unset( $options['maxSize'] );
380376 }
381377
Index: trunk/extensions/TimedMediaHandler/WebVideoTranscode/WebVideoTranscode.php
@@ -29,15 +29,15 @@
3030 */
3131
3232 // Ogg Profiles
33 - const ENC_OGV_2MBS = '220_200kbs.ogv';
34 - const ENC_OGV_5MBS = '360_560kbs.ogv';
35 - const ENC_OGV_9MBS = '480_880kbs.ogv';
36 - const ENC_OGV_HQ_VBR = '720_VBR.ogv';
 33+ const ENC_OGV_160P = '160p.ogv';
 34+ const ENC_OGV_360P = '360p.ogv';
 35+ const ENC_OGV_480P = '480p.ogv';
 36+ const ENC_OGV_720P = '720p.ogv';
3737
3838 // WebM profiles:
39 - const ENC_WEBM_5MBS = '360_560kbs.webm';
40 - const ENC_WEBM_9MBS = '480_900kbs.webm';
41 - const ENC_WEBM_HQ_VBR = '720_VBR.webm';
 39+ const ENC_WEBM_360P = '360p.webm';
 40+ const ENC_WEBM_480P = '480p.webm';
 41+ const ENC_WEBM_720P = '720p.webm';
4242
4343 // Static cache of transcode state per instantiation
4444 public static $transcodeState = array() ;
@@ -51,39 +51,40 @@
5252 * http://firefogg.org/dev/index.html
5353 */
5454 public static $derivativeSettings = array(
55 - WebVideoTranscode::ENC_OGV_2MBS =>
 55+ WebVideoTranscode::ENC_OGV_160P =>
5656 array(
57 - 'maxSize' => '220',
58 - 'targetSize' => '160P', // 160P
 57+ 'maxSize' => '288x160',
5958 'videoBitrate' => '160',
60 - 'audioBitrate' => '32',
61 - 'samplerate' => '22050',
62 - 'framerate' => '18',
63 - 'channels' => '1',
 59+ 'framerate' => '15',
 60+ 'audioQuality' => '-1',
 61+ 'samplerate' => '44100',
 62+ 'channels' => '2',
6463 'noUpscaling' => 'true',
65 - 'twopass' => 'true',
66 - 'keyframeInterval' => '64',
67 - 'bufDelay' => '128',
 64+ 'twopass' => 'true',
 65+ 'keyframeInterval' => '128',
 66+ 'bufDelay' => '256',
6867 'videoCodec' => 'theora',
6968 ),
70 - WebVideoTranscode::ENC_OGV_5MBS =>
 69+ WebVideoTranscode::ENC_OGV_360P =>
7170 array(
72 - 'maxSize' => '480',
73 - 'targetSize' => '360P', // 360P
 71+ 'maxSize' => '620x360',
7472 'videoBitrate' => '512',
75 - 'audioBitrate' => '48',
 73+ 'audioQuality' => '1',
 74+ 'samplerate' => '44100',
 75+ 'channels' => '2',
7676 'noUpscaling' => 'true',
7777 'twopass' => 'true',
7878 'keyframeInterval' => '128',
7979 'bufDelay' => '256',
80 - 'videoCodec' => 'theora',
 80+ 'videoCodec' => 'theora',
8181 ),
82 - WebVideoTranscode::ENC_OGV_9MBS =>
 82+ WebVideoTranscode::ENC_OGV_480P =>
8383 array(
84 - 'maxSize' => '640',
85 - 'targetSize' => '480P', // 480P
86 - 'videoBitrate' => '786',
87 - 'audioBitrate' => '96',
 84+ 'maxSize' => '854x480',
 85+ 'videoBitrate' => '1024',
 86+ 'audioQuality' => '2',
 87+ 'samplerate' => '44100',
 88+ 'channels' => '2',
8889 'noUpscaling' => 'true',
8990 'twopass' => 'true',
9091 'keyframeInterval' => '128',
@@ -91,10 +92,9 @@
9293 'videoCodec' => 'theora',
9394 ),
9495
95 - WebVideoTranscode::ENC_OGV_HQ_VBR =>
 96+ WebVideoTranscode::ENC_OGV_720P =>
9697 array(
97 - 'maxSize' => '1280', // 720P
98 - 'targetSize' => '720P', // 480P
 98+ 'maxSize' => '1280x720',
9999 'videoQuality' => 6,
100100 'audioQuality' => 3,
101101 'noUpscaling' => 'true',
@@ -103,34 +103,33 @@
104104 ),
105105
106106 // WebM transcode:
107 - WebVideoTranscode::ENC_WEBM_5MBS =>
 107+ WebVideoTranscode::ENC_WEBM_360P =>
108108 array(
109 - 'maxSize' => '480',
110 - 'targetSize' => '380P', // 360P
 109+ 'maxSize' => '640x360',
111110 'videoBitrate' => '512',
112 - 'audioBitrate' => '48',
 111+ 'audioQuality' => '1',
 112+ 'samplerate' => '44100',
113113 'noUpscaling' => 'true',
114114 'twopass' => 'true',
115115 'keyframeInterval' => '128',
116116 'bufDelay' => '256',
117117 'videoCodec' => 'vp8',
118118 ),
119 - WebVideoTranscode::ENC_WEBM_9MBS =>
 119+ WebVideoTranscode::ENC_WEBM_480P =>
120120 array(
121 - 'maxSize' => '640',
122 - 'targetSize' => '480P', // 480P
123 - 'videoBitrate' => '786',
124 - 'audioBitrate' => '96',
 121+ 'maxSize' => '854x480',
 122+ 'videoBitrate' => '1024',
 123+ 'audioQuality' => '2',
 124+ 'samplerate' => '44100',
125125 'noUpscaling' => 'true',
126126 'twopass' => 'true',
127127 'keyframeInterval' => '128',
128128 'bufDelay' => '256',
129129 'videoCodec' => 'vp8',
130130 ),
131 - WebVideoTranscode::ENC_WEBM_HQ_VBR =>
 131+ WebVideoTranscode::ENC_WEBM_720P =>
132132 array(
133 - 'maxSize' => '1280',
134 - 'targetSize' => '720P', // 720P
 133+ 'maxSize' => '1280x720',
135134 'videoQuality' => 7,
136135 'audioQuality' => 3,
137136 'noUpscaling' => 'true',
@@ -622,75 +621,34 @@
623622 }
624623 wfProfileOut( __METHOD__ );
625624 }
626 - /**
627 - * Target size transform slightly diffrent from "maxsize"
628 - *
629 - * Here we check aspect ratio to decide if we use the $target size or not.
630 - *
631 - * @param $file File Object the source file being transformed
632 - * @param $targetSize String Target file size string ushualy of type '640P', '720P' etc .
633 - */
634 - public static function getTargetSizeTransform( &$file, $targetSize ){
635 - // Strip the non-numeric parts of the targetSize
636 - $targetSize = preg_replace('/\D/', '', $targetSize);
637 - $base16n9Ratio = 16/9;
638 - $fileRatio = $file->getWidth() / $file->getHeight();
639 -
640 - // Check if the $file for very nonstandard aspect ratio ie "very wide" or "very tall" video:
641 - // in this case use the max size system to avoid a huge video at low bitrates:
642 - if( $fileRatio > 3 || $fileRatio < .25 ){
643 - return self::getMaxSizeTransform( $file, $targetSize);
644 - }
645 - // make sure we don't upscale
646 - $targetSize = ( $targetSize > $file->getHeight() )? $file->getHeight() : $targetSize;
647 -
648 - // Check if file is narrower than 16:9 and use raw targetSize for height, true to HD name
649 - // ie 640P is 640 pixles high.
650 - if( $fileRatio <= $base16n9Ratio ){
651 - $height = $targetSize;
652 - $width = $fileRatio * $height;
653 - } else {
654 - // wider than 16:9 full HD width
655 - $width = $targetSize * $base16n9Ratio;
656 - $height = $width / $fileRatio;
657 - }
658 -
659 - // round width and height
660 - $width = round( $width );
661 - $height = round( $height );
662 -
663 - // round to even numbers:
664 - $width = ($width % 2)? $width+1: $width;
665 - $height = ($height % 2)? $height+1: $height;
666 - return array( $width, $height );
667 - }
668625
669626 /**
670627 * Transforms the size per a given "maxSize"
671628 * if maxSize is > file, file size is used
672629 */
673 - public static function getMaxSizeTransform( &$file, $targetMaxSize ){
674 - $sourceWidth = $file->getWidth();
675 - $sourceHeight = $file->getHeight();
676 - if( WebVideoTranscode::isTargetLargerThanFile( $file, $targetMaxSize) ){
677 - return array(
678 - $sourceWidth,
679 - $sourceHeight
680 - );
681 - }
682 - // Get the aspect ratio percentage
683 - $ar = intval( $sourceWidth ) / intval( $sourceHeight );
684 - if ( $sourceWidth > $targetMaxSize ) {
685 - return array(
686 - intval( $targetMaxSize ),
687 - intval( $targetMaxSize / $ar)
688 - );
 630+ public static function getMaxSizeTransform( &$file, $targetMaxSize ){
 631+ $maxSize = self::getMaxSize( $targetMaxSize );
 632+ $sourceWidth = intval( $file->getWidth() );
 633+ $sourceHeight = intval( $file->getHeight() );
 634+ $sourceAspect = intval( $sourceWidth ) / intval( $sourceHeight );
 635+ $targetWidth = $sourceWidth;
 636+ $targetHeight = $sourceHeight;
 637+ if ( $sourceAspect <= $maxSize['aspect'] ) {
 638+ if ( $sourceHeight > $maxSize['height'] ) {
 639+ $targetHeight = $maxSize['height'];
 640+ $targetWidth = intval( $targetHeight * $sourceAspect );
 641+ //some players do not like uneven frame sizes
 642+ $targetWidth += $targetWidth%2;
 643+ }
689644 } else {
690 - return array(
691 - intval( $targetMaxSize ),
692 - intval( $targetMaxSize / $ar)
693 - );
694 - }
 645+ if ( $sourceWidth > $maxSize['width'] ) {
 646+ $targetWidth = $maxSize['width'];
 647+ $targetHeight = intval( $targetWidth / $sourceAspect );
 648+ //some players do not like uneven frame sizes
 649+ $targetHeight += $targetHeight%2;
 650+ }
 651+ }
 652+ return array( $targetWidth, $targetHeight );
695653 }
696654 /**
697655 * Test if a given transcode target is larger than the source file
@@ -699,7 +657,33 @@
700658 * @param $file {Object} File object
701659 */
702660 public static function isTargetLargerThanFile( &$file, $targetMaxSize ){
703 - $largerSize = ( $file->getWidth() > $file->getHeight() )?$file->getWidth(): $file->getHeight();
704 - return ( $targetMaxSize > $largerSize );
 661+ $maxSize = self::getMaxSize( $targetMaxSize );
 662+ print_r($max_size);
 663+ $sourceWidth = $file->getWidth();
 664+ $sourceHeight = $file->getHeight();
 665+ $sourceAspect = intval( $sourceWidth ) / intval( $sourceHeight );
 666+ if ( $sourceAspect <= $maxSize['aspect'] ) {
 667+ return ( $maxSize['height'] > $sourceHeight );
 668+ } else {
 669+ return ( $maxSize['width'] > $sourceWidth );
 670+ }
705671 }
 672+ /**
 673+ * Return maxSize array for given maxSize setting
 674+ *
 675+ * @param $maxSize maxSize settings string (i.e. 640x480)
 676+ */
 677+ public static function getMaxSize( $targetMaxSize ){
 678+ $maxSize = array();
 679+ $targetMaxSize = explode('x', $targetMaxSize);
 680+ if (count($targetMaxSize) == 1) {
 681+ $maxSize['width'] = intval($targetMaxSize[0]);
 682+ $maxSize['height'] = intval($targetMaxSize[0]);
 683+ } else {
 684+ $maxSize['width'] = intval($targetMaxSize[0]);
 685+ $maxSize['height'] = intval($targetMaxSize[1]);
 686+ }
 687+ $maxSize['aspect'] = $maxSize['width'] / $maxSize['height'];
 688+ return $maxSize;
 689+ }
706690 }

Follow-up revisions

RevisionCommit summaryAuthorDate
r94740fu r94732 for translatewiki.netraymond10:41, 17 August 2011

Status & tagging log