r62223 MediaWiki - Code Review archive

Repository:MediaWiki
Revision:r62222‎ | r62223 | r62224 >
Date:05:51, 10 February 2010
Author:tstarling
Status:ok (Comments)
Tags:
Comment:
* In preparation for deployment, revert the bulk of Michael's unreviewed work. Time for review has run out. The code has many obvious problems with it. Comparing against r38714 will give you an idea of which changes I am accepting. Fixes bug 22388.
* Removed magic word hook, doesn't do anything useful.
* OggPlayer.js still needs some work.
Modified paths:
  • /trunk/extensions/OggHandler/ApiPlayTracking (deleted) (history)
  • /trunk/extensions/OggHandler/OggHandler.i18n.magic.php (modified) (history)
  • /trunk/extensions/OggHandler/OggHandler.i18n.php (modified) (history)
  • /trunk/extensions/OggHandler/OggHandler.php (modified) (history)
  • /trunk/extensions/OggHandler/OggHandler_body.php (modified) (history)
  • /trunk/extensions/OggHandler/OggPlayer.js (modified) (history)
  • /trunk/extensions/OggHandler/OggTranscode (deleted) (history)
  • /trunk/extensions/OggHandler/README (modified) (history)

Diff [purge]

Index: trunk/extensions/OggHandler/OggHandler.i18n.magic.php
@@ -11,74 +11,54 @@
1212 'ogg_noplayer' => array( 0, 'noplayer' ),
1313 'ogg_noicon' => array( 0, 'noicon' ),
1414 'ogg_thumbtime' => array( 0, 'thumbtime=$1' ),
15 - 'ogg_starttime' => array( 0, 'start=$1'),
16 - 'ogg_endtime' => array( 0, 'end=$1'),
1715 );
1816
1917 $magicWords['af'] = array(
2018 'ogg_noplayer' => array( '0', 'geenspeler', 'noplayer' ),
2119 'ogg_noicon' => array( '0', 'geenikoon', 'noicon' ),
22 - 'ogg_starttime' => array( '0', 'begin=$1', 'start=$1' ),
23 - 'ogg_endtime' => array( '0', 'einde=$1', 'end=$1' ),
2420 );
2521
2622 $magicWords['ar'] = array(
2723 'ogg_noplayer' => array( '0', 'لابرنامج', 'noplayer' ),
2824 'ogg_noicon' => array( '0', 'لاأيقونة', 'noicon' ),
2925 'ogg_thumbtime' => array( '0', 'وقت_التصغير=$1', 'thumbtime=$1' ),
30 - 'ogg_starttime' => array( '0', 'بداية=$1', 'start=$1' ),
31 - 'ogg_endtime' => array( '0', 'نهاية=$1', 'end=$1' ),
3226 );
3327
3428 $magicWords['arc'] = array(
35 - 'ogg_starttime' => array( '0', 'ܫܘܪܝܐ=', 'start=$1' ),
36 - 'ogg_endtime' => array( '0', 'ܫܘܠܡܐ=$1', 'end=$1' ),
3729 );
3830
3931 $magicWords['arz'] = array(
4032 'ogg_noplayer' => array( '0', 'لابرنامج', 'noplayer' ),
4133 'ogg_noicon' => array( '0', 'لاأيقونة', 'noicon' ),
4234 'ogg_thumbtime' => array( '0', 'وقت_التصغير=$1', 'thumbtime=$1' ),
43 - 'ogg_starttime' => array( '0', 'بداية=$1', 'start=$1' ),
44 - 'ogg_endtime' => array( '0', 'نهاية=$1', 'end=$1' ),
4535 );
4636
4737 $magicWords['ko'] = array(
48 - 'ogg_starttime' => array( '0', '시작=$1', 'start=$1' ),
49 - 'ogg_endtime' => array( '0', '끝=$1', 'end=$1' ),
5038 );
5139
5240 $magicWords['ml'] = array(
5341 'ogg_noplayer' => array( '0', 'പ്ലേയറില്ല', 'noplayer' ),
5442 'ogg_noicon' => array( '0', 'ഐകോണില്ല', 'noicon' ),
5543 'ogg_thumbtime' => array( '0', 'ലഘുരൂപസമയം=$1', 'thumbtime=$1' ),
56 - 'ogg_starttime' => array( '0', 'തുടങ്ങുക=$1', 'start=$1' ),
57 - 'ogg_endtime' => array( '0', 'നിർത്തുക=$1', 'end=$1' ),
5844 );
5945
6046 $magicWords['mr'] = array(
6147 'ogg_thumbtime' => array( '0', 'थंबटाइम=$1', 'इवलावेळ=$1', 'thumbtime=$1' ),
62 - 'ogg_starttime' => array( '0', 'सुरवात=$1', 'start=$1' ),
63 - 'ogg_endtime' => array( '0', 'शेवट=$1', 'end=$1' ),
6448 );
6549
6650 $magicWords['nds-nl'] = array(
6751 'ogg_noplayer' => array( '0', 'gienspeuler', 'geenspeler', 'noplayer' ),
6852 'ogg_noicon' => array( '0', 'gienicoon', 'geenicoon', 'noicon' ),
6953 'ogg_thumbtime' => array( '0', 'miniatuurtied=$1', 'miniatuurtijd=$1', 'thumbtime=$1' ),
70 - 'ogg_endtime' => array( '0', 'einde=$1', 'eind=$1', 'end=$1' ),
7154 );
7255
7356 $magicWords['nl'] = array(
7457 'ogg_noplayer' => array( '0', 'geenspeler', 'noplayer' ),
7558 'ogg_noicon' => array( '0', 'geenicoon', 'noicon' ),
7659 'ogg_thumbtime' => array( '0', 'miniatuurtijd=$1', 'thumbtime=$1' ),
77 - 'ogg_endtime' => array( '0', 'eind=$1', 'end=$1' ),
7860 );
7961
8062 $magicWords['ru'] = array(
8163 'ogg_noplayer' => array( '0', 'нетпроигрывателя', 'noplayer' ),
8264 'ogg_noicon' => array( '0', 'нетзначка', 'noicon' ),
83 - 'ogg_starttime' => array( '0', 'начало=$1', 'start=$1' ),
84 - 'ogg_endtime' => array( '0', 'окончание=$1', 'end=$1' ),
8565 );
Index: trunk/extensions/OggHandler/README
@@ -6,19 +6,6 @@
77
88 require( "$IP/extensions/OggHandler/OggHandler.php" );
99
10 -oggThumb
11 -
12 -We use oggvideotools for creating still images of videos, you will need a copy on your
13 -server.
14 -
15 -Set the oggThumb binary location with:
16 -
17 - $wgOggThumbLocation = '/path/to/oggThumb';
18 -
19 -Download oggThumb from: http://dev.streamnik.de/oggvideotools.html
20 -
21 -
2210 FFmpeg
2311 ------
2412
@@ -48,18 +35,6 @@
4936
5037 after the require line in LocalSettings.php.
5138
52 -ffmpeg2theora
53 -
54 -We use ffmpeg2theora for extract metadata from videos, you will need a copy on your
55 -server.
56 -
57 -Set the ffmpeg2theora binary location with:
58 -
59 - $wgffmpeg2theoraPath = '/path/to/ffmpeg2theora';
60 -
61 -Download ffmpeg2theora from: http://v2v.cc/~j/ffmpeg2theora/
62 -
6339 Cortado
6440 -------
6541
Index: trunk/extensions/OggHandler/OggHandler.php
@@ -29,16 +29,7 @@
3030 $wgExtensionMessagesFiles['OggHandler'] = "$oggDir/OggHandler.i18n.php";
3131 $wgExtensionMessagesFiles['OggHandlerMagic'] = "$oggDir/OggHandler.i18n.magic.php";
3232 $wgParserOutputHooks['OggHandler'] = array( 'OggHandler', 'outputHook' );
33 -$wgHooks['LanguageGetMagic'][] = 'OggHandler::registerMagicWords';
3433
35 -
36 -// Setup a hook for iframe=true (will strip the interface and only output the player)
37 -$wgHooks['ArticleFromTitle'][] = 'OggHandler::iframeOutputHook';
38 -
39 -// OggTranscode setup
40 -$wgAutoloadClasses['OggTranscode'] = "$oggDir/OggTranscode/OggTranscode.php";
41 -$wgHooks['LoadExtensionSchemaUpdates'][] = 'OggTranscode::schema';
42 -
4334 $wgExtensionCredits['media'][] = array(
4435 'path' => __FILE__,
4536 'name' => 'OggHandler',
@@ -54,63 +45,9 @@
5546 $wgOggVideoTypes = array( 'Theora' );
5647 $wgOggAudioTypes = array( 'Vorbis', 'Speex', 'FLAC' );
5748
58 -// Output Video tag for player ( video tag is then rewritten to compatible player via mwEmbed )
59 -$wgVideoTagOut = false;
60 -
61 -// Defautl skin for mwEmbed player
62 -// Skins presently available:
63 -// "kskin" kaltura skin
64 -// "mvpcf" a jquery ui like skin
65 -$wgVideoPlayerSkin = 'kskin';
66 -
67 -// Support striped player iframe output for remote embedding
68 -$wgEnableIframeEmbed = false;
69 -
70 -// Inline timedText reference url output
71 -$wgEnableTimedText = false;
72 -
73 -//Location of oggThumb binary ( used instead of ffmpeg )
74 -$wgOggThumbLocation = '/usr/bin/oggThumb';
75 -
76 -//the location of ffmpeg2theora ( for grabbing
77 -$wgffmpeg2theoraPath = '/usr/bin/ffmpeg2theora';
78 -
7949 // Location of the FFmpeg binary
8050 $wgFFmpegLocation = '/usr/bin/ffmpeg';
8151
82 -/**
83 - * enable oggz_chop support
84 - * if enabled the mwEmbed player will use temporal urls
85 - * for helping with seeking with some plugin types
86 - */
87 -$wgEnableTemporalOggUrls = false;
88 -
89 -// Enabled derivatives array
90 -// If set to false no derivatives will be used
91 -//
92 -// Only derivatives with less width than the
93 -// source asset size will be created
94 -//
95 -// Derivatives can be created by running OggTranscodeCron.php
96 -// at regular intervals. The cron job
97 -// cycles through every ogg file and encodes the following derivative set:
98 -//
99 -// Derivative keys encode settings are defined in OggTranscode.php
100 -//
101 -$wgEnabledDerivatives = array(
102 - OggTranscode::ENC_WEB_2MBS,
103 - OggTranscode::ENC_WEB_4MBS,
104 - OggTranscode::ENC_WEB_6MBS,
105 - OggTranscode::ENC_HQ_VBR
106 -);
107 -
108 -// If play requests should be tracked.
109 -$wgEnablePlayTracking = true;
110 -
111 -// One out of how many requests should be tracked:
112 -$wgPlayTrackingRate = 10;
113 -
114 -
11552 // Filename or URL path to the Cortado Java player applet.
11653 //
11754 // If no path is included, the path to this extension's
@@ -127,53 +64,3 @@
12865
12966 /******************* CONFIGURATION ENDS HERE **********************/
13067
131 -// NOTE: normally configuration based code would go into extension setup function
132 -// This config setups hooks and autoloaders that should happen at
133 -// initial config time
134 -
135 -// Alternatively we could have top level php files that include the
136 -// following pieces of code.
137 -
138 -// Enable play tracking
139 -if( $wgEnablePlayTracking ){
140 - // Add the Api Play Tracking setup
141 - $wgAutoloadClasses['ApiPlayTracking'] = "$oggDir/ApiPlayTracking/ApiPlayTracking.php";
142 - $wgHooks['LoadExtensionSchemaUpdates'][] = 'ApiPlayTracking::schema';
143 -
144 - //Add the api entry point:
145 - $wgAPIModules[ 'playtracking' ] = 'ApiPlayTracking';
146 -}
147 -
148 -// Enable timed text
149 -if( $wgEnableTimedText ){
150 - /**
151 - * Handle Adding of "timedText" NameSpace
152 - */
153 - $wgTimedTextNS = null;
154 -
155 - // Make sure $wgExtraNamespaces in an array (set to NULL by default) :
156 - if ( !is_array( $wgExtraNamespaces ) ) {
157 - $wgExtraNamespaces = array();
158 - }
159 - // Check for "TimedText" NS
160 - $maxNS = 101; // content pages need "even" namespaces
161 - foreach($wgExtraNamespaces as $ns => $nsTitle ){
162 - if( $nsTitle == 'TimedText' ){
163 - $wgTimedTextNS = $ns;
164 - }
165 - if( $ns > $maxNS ){
166 - $maxNs = $ns;
167 - }
168 - }
169 - // If not found add Add a custom timedText NS
170 - if( !$wgTimedTextNS ){
171 - $wgTimedTextNS = ( $maxNS + 1 );
172 - $wgExtraNamespaces[ $wgTimedTextNS ] = 'TimedText';
173 - $wgExtraNamespaces[ $wgTimedTextNS +1 ] = 'TimedText_talk';
174 - }
175 - define( "NS_TIMEDTEXT", $wgTimedTextNS);
176 - // Assume $wgTimedTextNS +1 for talk
177 - define( "NS_TIMEDTEXT_TALK", $wgTimedTextNS +1);
178 -
179 -
180 -} // end of handling timedText
\ No newline at end of file
Index: trunk/extensions/OggHandler/OggPlayer.js
@@ -84,32 +84,6 @@
8585 }
8686 }
8787
88 - // Do player tracking if enabled
89 - if( this.playTracking ){
90 -
91 - if( Math.floor( Math.random()* wgOggPlayer.playTrackingRate ) == 0 ){
92 -
93 - var url = wgScript.replace( 'index.php', 'api.php');
94 - var filename = params.linkUrl.replace(/.*File\:/, '');
95 - var playerList = '';
96 - var coma = '';
97 - for(var i = 0 ; i < this.clientSupports.length ; i ++ ){
98 - playerList+= i;
99 - coma = ',';
100 - }
101 - url+= '?action=playtracking&filename=' + escape( filename );
102 - url+= '&client=' + escape( player + '|' + playerList + '|' + navigator.userAgent );
103 - url+= '&format=json&callback=wgOggPlayer.playTrackingDone';
104 -
105 - // Issue the request by including the script ( far fewer lines than robust ajax call )
106 - // (jQuery included by default would let us do clean jQuery.get calls )
107 - var s = document.createElement('script');
108 - s.setAttribute('src',url);
109 - s.setAttribute('type','text/javascript');
110 - document.getElementsByTagName('head')[0].appendChild(s);
111 - }
112 - }
113 -
11488 elt.innerHTML = '';
11589 switch ( player ) {
11690 case 'videoElement':
@@ -160,9 +134,6 @@
161135 elt.appendChild( div );
162136 }
163137 },
164 - 'playTrackingDone' : function( data ){
165 - // play tracking done
166 - },
167138 'debug': function( s ) {
168139 //alert(s);
169140 },
Index: trunk/extensions/OggHandler/OggHandler_body.php
@@ -5,17 +5,10 @@
66 class OggHandler extends MediaHandler {
77 const OGG_METADATA_VERSION = 2;
88
9 - static $magicDone = false;
10 -
119 function isEnabled() {
1210 return true;
1311 }
1412
15 - static function registerMagicWords( &$magicData, $code ) {
16 - wfLoadExtensionMessages( 'OggHandler' );
17 - return true;
18 - }
19 -
2013 function getParamMap() {
2114 wfLoadExtensionMessages( 'OggHandler' );
2215 return array(
@@ -23,15 +16,19 @@
2417 'ogg_noplayer' => 'noplayer',
2518 'ogg_noicon' => 'noicon',
2619 'ogg_thumbtime' => 'thumbtime',
27 - 'ogg_starttime' => 'start',
28 - 'ogg_endtime' => 'end',
2920 );
3021 }
3122
3223 function validateParam( $name, $value ) {
33 - if ( $name == 'thumbtime' || $name == 'start' || $name == 'end' ) {
34 - if ( $this->parseTimeString( $value ) === false ) {
 24+ if ( isset( $params['thumbtime'] ) ) {
 25+ $length = $this->getLength( $image );
 26+ $time = $this->parseTimeString( $params['thumbtime'] );
 27+ if ( $time === false ) {
3528 return false;
 29+ } elseif ( $time > $length - 1 ) {
 30+ $params['thumbtime'] = $length - 1;
 31+ } elseif ( $time <= 0 ) {
 32+ $params['thumbtime'] = 0;
3633 }
3734 }
3835 return true;
@@ -76,26 +73,17 @@
7774 }
7875
7976 function normaliseParams( $image, &$params ) {
80 - $timeParam = array('thumbtime', 'start', 'end');
81 - // Parse time values if endtime or thumbtime can't be more than length -1
82 - foreach($timeParam as $pn){
83 - if ( isset( $params[$pn] ) ) {
84 - $length = $this->getLength( $image );
85 - $time = $this->parseTimeString( $params[$pn] );
86 - if ( $time === false ) {
87 - return false;
88 - } elseif ( $time > $length - 1 ) {
89 - $params[$pn] = $length - 1;
90 - } elseif ( $time <= 0 ) {
91 - $params[$pn] = 0;
92 - }
 77+ if ( isset( $params['thumbtime'] ) ) {
 78+ $length = $this->getLength( $image );
 79+ $time = $this->parseTimeString( $params['thumbtime'] );
 80+ if ( $time === false ) {
 81+ return false;
 82+ } elseif ( $time > $length - 1 ) {
 83+ $params['thumbtime'] = $length - 1;
 84+ } elseif ( $time <= 0 ) {
 85+ $params['thumbtime'] = 0;
9386 }
9487 }
95 - // Make sure start time is not > than end time
96 - if(isset($params['start']) && isset($params['end']) ){
97 - if($params['start'] > $params['end'])
98 - return false;
99 - }
10088
10189 return true;
10290 }
@@ -147,8 +135,6 @@
148136 }
149137 $metadata['streams'] = $streams;
150138 $metadata['length'] = $f->getLength();
151 - // Get the offset of the file (in cases where the file is a segment copy)
152 - $metadata['offset'] = $f->getStartOffset();
153139 } catch ( PEAR_Exception $e ) {
154140 // File not found, invalid stream, etc.
155141 $metadata['error'] = array(
@@ -181,38 +167,17 @@
182168 }
183169
184170 function doTransform( $file, $dstPath, $dstUrl, $params, $flags = 0 ) {
185 - global $wgFFmpegLocation, $wgEnableTemporalOggUrls, $wgEnabledDerivatives;
 171+ global $wgFFmpegLocation;
186172
187173 $width = $params['width'];
188174 $srcWidth = $file->getWidth();
189175 $srcHeight = $file->getHeight();
190176 $height = $srcWidth == 0 ? $srcHeight : $width * $srcHeight / $srcWidth;
191177 $length = $this->getLength( $file );
192 - $offset = $this->getOffset( $file );
193178 $noPlayer = isset( $params['noplayer'] );
194179 $noIcon = isset( $params['noicon'] );
195 -
196 - // Set up the default targetUrl:
197180 $targetFileUrl = $file->getURL();
198181
199 - // Check for $wgEnabledDerivatives
200 - if ( isset( $wgEnabledDerivatives ) &&
201 - is_array( $wgEnabledDerivatives ) &&
202 - count( $wgEnabledDerivatives ) != 0
203 - ){
204 - // Get the derivative via embed width
205 - //( will return $file->getURL() if no derivative is found )
206 - $targetFileUrl = OggTranscode::getWidthDerivativeURL( $file, $width);
207 - }
208 -
209 - // Add temporal request parameter if $wgEnableTemporalOggUrls is on:
210 - if( $wgEnableTemporalOggUrls && isset( $params['start'] ) ){
211 - $targetFileUrl .= '?t=' . seconds2npt( $this->parseTimeString( $params['start'], $length ) );
212 - if(isset( $params[ 'end' ] ) && $params['end'] )
213 - $targetFileUrl.='/'. seconds2npt( $this->parseTimeString( $params['end'], $length) );
214 - }
215 -
216 -
217182 if ( !$noPlayer ) {
218183 // Hack for miscellaneous callers
219184 global $wgOut;
@@ -238,111 +203,60 @@
239204 } else {
240205 $width = $params['width'];
241206 }
242 - return new OggAudioDisplay( $file, $targetFileUrl, $width, $height, $length, $dstPath, $noIcon, $offset );
 207+ return new OggAudioDisplay( $file, $targetFileUrl, $width, $height, $length, $dstPath, $noIcon );
243208 }
244209
245210 // Video thumbnail only
246211 if ( $noPlayer ) {
247 - return new ThumbnailImage( $file, $dstUrl, $width, $height, $dstPath , $noIcon, $offset);
 212+ return new ThumbnailImage( $file, $dstUrl, $width, $height, $dstPath, $noIcon );
248213 }
249214
250215 if ( $flags & self::TRANSFORM_LATER ) {
251 - return new OggVideoDisplay( $file, $targetFileUrl, $dstUrl, $width, $height, $length, $dstPath, $noIcon, $offset);
 216+ return new OggVideoDisplay( $file, $targetFileUrl, $dstUrl, $width, $height, $length, $dstPath, $noIcon );
252217 }
253218
254 - $thumbStatus = $this->gennerateThumb($file, $dstPath,$params, $width, $height);
255 - if( $thumbStatus !== true )
256 - return $thumbStatus;
257 -
258 -
259 - return new OggVideoDisplay( $file, $targetFileUrl, $dstUrl, $width, $height, $length, $dstPath );
260 - }
261 - function gennerateThumb($file, $dstPath, $params, $width, $height){
262 - global $wgFFmpegLocation, $wgOggThumbLocation;
263 -
264 - $length = $this->getLength( $file );
265 - $thumbtime = false;
 219+ $thumbTime = false;
266220 if ( isset( $params['thumbtime'] ) ) {
267 - $thumbtime = $this->parseTimeString( $params['thumbtime'], $length );
 221+ $thumbTime = $this->parseTimeString( $params['thumbtime'], $length );
268222 }
269 - if ( $thumbtime === false ) {
270 - // If start time param isset use that for the thumb:
271 - if( isset( $params['start'] ) ){
272 - $thumbtime = $this->parseTimeString( $params['start'], $length );
273 - }else{
274 - # Seek to midpoint by default, it tends to be more interesting than the start
275 - $thumbtime = $length / 2;
276 - }
 223+ if ( $thumbTime === false ) {
 224+ # Seek to midpoint by default, it tends to be more interesting than the start
 225+ $thumbTime = $length / 2;
277226 }
 227+
278228 wfMkdirParents( dirname( $dstPath ) );
279229
280230 wfDebug( "Creating video thumbnail at $dstPath\n" );
281231
282 - // First check for oggThumb
283 - if( $wgOggThumbLocation && is_file( $wgOggThumbLocation ) ){
284 - $cmd = wfEscapeShellArg( $wgOggThumbLocation ) .
285 - ' -t '. intval( $thumbtime ) . ' ' .
286 - ' -n ' . wfEscapeShellArg( $dstPath ) . ' ' .
287 - ' ' . wfEscapeShellArg( $file->getPath() ) . ' 2>&1';
288 - $returnText = wfShellExec( $cmd, $retval );
289 - //check if it was successful or if we should try ffmpeg:
290 - if ( !$this->removeBadFile( $dstPath, $retval ) ) {
291 - return true;
292 - }
293 - }
294 -
295 - $cmd = wfEscapeShellArg( $wgFFmpegLocation ) .
296 - ' -ss ' . intval( $thumbtime ) . ' ' .
297 - ' -i ' . wfEscapeShellArg( $file->getPath() ) .
 232+ $cmd = wfEscapeShellArg( $wgFFmpegLocation ) .
 233+ ' -ss ' . intval( $thumbTime ) . ' ' .
 234+ ' -i ' . wfEscapeShellArg( $file->getPath() ) .
298235 # MJPEG, that's the same as JPEG except it's supported by the windows build of ffmpeg
299236 # No audio, one frame
300237 ' -f mjpeg -an -vframes 1 ' .
301238 wfEscapeShellArg( $dstPath ) . ' 2>&1';
302 -
 239+
303240 $retval = 0;
304241 $returnText = wfShellExec( $cmd, $retval );
305242
306243 if ( $this->removeBadFile( $dstPath, $retval ) || $retval ) {
307 - #re-attempt encode command on frame time 1 and with mapping (special case for chopped oggs)
308 - $cmd = wfEscapeShellArg( $wgFFmpegLocation ) .
309 - ' -map 0:1 '.
310 - ' -ss 1 ' .
311 - ' -i ' . wfEscapeShellArg( $file->getPath() ) .
312 - ' -f mjpeg -an -vframes 1 ' .
313 - wfEscapeShellArg( $dstPath ) . ' 2>&1';
314 - $retval = 0;
315 - $returnText = wfShellExec( $cmd, $retval );
316 - }
317 -
318 - if ( $this->removeBadFile( $dstPath, $retval ) || $retval ) {
319 - #No mapping, time zero. A last ditch attempt.
320 - $cmd = wfEscapeShellArg( $wgFFmpegLocation ) .
321 - ' -ss 0 ' .
322 - ' -i ' . wfEscapeShellArg( $file->getPath() ) .
323 - ' -f mjpeg -an -vframes 1 ' .
324 - wfEscapeShellArg( $dstPath ) . ' 2>&1';
325 -
326 - $retval = 0;
327 - $returnText = wfShellExec( $cmd, $retval );
328 - // If still bad return error:
329 - if ( $this->removeBadFile( $dstPath, $retval ) || $retval ) {
330 - // Filter nonsense
331 - $lines = explode( "\n", str_replace( "\r\n", "\n", $returnText ) );
332 - if ( substr( $lines[0], 0, 6 ) == 'FFmpeg' ) {
333 - for ( $i = 1; $i < count( $lines ); $i++ ) {
334 - if ( substr( $lines[$i], 0, 2 ) != ' ' ) {
335 - break;
336 - }
 244+ // Filter nonsense
 245+ $lines = explode( "\n", str_replace( "\r\n", "\n", $returnText ) );
 246+ if ( substr( $lines[0], 0, 6 ) == 'FFmpeg' ) {
 247+ for ( $i = 1; $i < count( $lines ); $i++ ) {
 248+ if ( substr( $lines[$i], 0, 2 ) != ' ' ) {
 249+ break;
337250 }
338 - $lines = array_slice( $lines, $i );
339251 }
340 - // Return error box
341 - return new MediaTransformError( 'thumbnail_error', $width, $height, implode( "\n", $lines ) );
 252+ $lines = array_slice( $lines, $i );
342253 }
 254+ // Return error box
 255+ return new MediaTransformError( 'thumbnail_error', $width, $height, implode( "\n", $lines ) );
343256 }
344 - //if we did not return an error return true to continue media thum display
345 - return true;
 257+
 258+ return new OggVideoDisplay( $file, $file->getURL(), $dstUrl, $width, $height, $length, $dstPath );
346259 }
 260+
347261 function canRender( $file ) { return true; }
348262 function mustRender( $file ) { return true; }
349263
@@ -354,14 +268,6 @@
355269 return $metadata['length'];
356270 }
357271 }
358 - function getOffset( $file ){
359 - $metadata = $this->unpackMetadata( $file->getMetadata() );
360 - if ( !$metadata || isset( $metadata['error'] ) || !isset( $metadata['offset']) ) {
361 - return 0;
362 - } else {
363 - return $metadata['offset'];
364 - }
365 - }
366272
367273 function getStreamTypes( $file ) {
368274 $streamTypes = '';
@@ -402,7 +308,7 @@
403309 $unpacked = $this->unpackMetadata( $file->getMetadata() );
404310 return wfMsg( 'ogg-long-error', $unpacked['error']['message'] );
405311 }
406 - if ( array_intersect( $streamTypes,$wgOggVideoTypes ) ) {
 312+ if ( array_intersect( $streamTypes, $wgOggVideoTypes ) ) {
407313 if ( array_intersect( $streamTypes, $wgOggAudioTypes ) ) {
408314 $msg = 'ogg-long-multiplexed';
409315 } else {
@@ -451,75 +357,37 @@
452358 }
453359
454360 function setHeaders( $out ) {
455 - global $wgOggScriptVersion, $wgCortadoJarFile, $wgServer, $wgUser, $wgScriptPath,
456 - $wgEnablePlayTracking, $wgPlayTrackingRate, $wgVideoTagOut;
 361+ global $wgOggScriptVersion, $wgCortadoJarFile, $wgServer, $wgUser, $wgScriptPath;
457362
458 - if( $wgVideoTagOut ){
459 - // We could add "video" tag javascript
460 - // If we wanted to block on mwEmbed player js, instead of loading the js onDomReady
 363+ if ( $out->hasHeadItem( 'OggHandler' ) ) {
 364+ return;
 365+ }
461366
462 - // embedPlayer classes include: $j.ui,mw.EmbedPlayer,nativeEmbed,ctrlBuilder,mvpcfConfig,kskinConfig,$j.fn.menu,$j.cookie,$j.ui.slider,mw.TimedText
463 - //<link rel="stylesheet" href="js/mwEmbed/skins/kskin/playerSkin.css" type="text/css" media="screen" />
 367+ wfLoadExtensionMessages( 'OggHandler' );
464368
465 - // Loading dynamically lets us avoid unnecessary code
466 - // ie firefox does not need "JSON.js" and IE ~maybe~ needs cortado embed etc.
 369+ $msgNames = array( 'ogg-play', 'ogg-pause', 'ogg-stop', 'ogg-no-player',
 370+ 'ogg-player-videoElement', 'ogg-player-oggPlugin', 'ogg-player-cortado', 'ogg-player-vlc-mozilla',
 371+ 'ogg-player-vlc-activex', 'ogg-player-quicktime-mozilla', 'ogg-player-quicktime-activex',
 372+ 'ogg-player-totem', 'ogg-player-kaffeine', 'ogg-player-kmplayer', 'ogg-player-mplayerplug-in',
 373+ 'ogg-player-thumbnail', 'ogg-player-selected', 'ogg-use-player', 'ogg-more', 'ogg-download',
 374+ 'ogg-desc-link', 'ogg-dismiss', 'ogg-player-soundthumb', 'ogg-no-xiphqt' );
 375+ $msgValues = array_map( 'wfMsg', $msgNames );
 376+ $jsMsgs = Xml::encodeJsVar( (object)array_combine( $msgNames, $msgValues ) );
 377+ $cortadoUrl = $wgCortadoJarFile;
 378+ $scriptPath = self::getMyScriptPath();
 379+ if( substr( $cortadoUrl, 0, 1 ) != '/'
 380+ && substr( $cortadoUrl, 0, 4 ) != 'http' ) {
 381+ $cortadoUrl = "$wgServer$scriptPath/$cortadoUrl";
 382+ }
 383+ $encCortadoUrl = Xml::encodeJsVar( $cortadoUrl );
 384+ $encExtPathUrl = Xml::encodeJsVar( $scriptPath );
467385
468 - if( $wgEnablePlayTracking ) {
469 - $encPlayTracking = Xml::encodeJsVar( $wgPlayTrackingRate );
470 - // Should replace with a standard way to send configuration to mw core js
471 - $out->addHeadItem( 'OggHandler', <<<EOT
472 -<script type="text/javascript">
473 -mw.setConfig('playTracking', 'true');
474 -mw.setConfig('playTrackingRate', $encPlayTracking );
475 -</script>
476 -EOT
477 -);
478 - }
479 -
480 - }else{
481 - if ( $out->hasHeadItem( 'OggHandler' ) ) {
482 - return;
483 - }
484 -
485 - wfLoadExtensionMessages( 'OggHandler' );
486 -
487 - $msgNames = array( 'ogg-play', 'ogg-pause', 'ogg-stop', 'ogg-no-player',
488 - 'ogg-player-videoElement', 'ogg-player-oggPlugin', 'ogg-player-cortado', 'ogg-player-vlc-mozilla',
489 - 'ogg-player-vlc-activex', 'ogg-player-quicktime-mozilla', 'ogg-player-quicktime-activex',
490 - 'ogg-player-totem', 'ogg-player-kaffeine', 'ogg-player-kmplayer', 'ogg-player-mplayerplug-in',
491 - 'ogg-player-thumbnail', 'ogg-player-selected', 'ogg-use-player', 'ogg-more', 'ogg-download',
492 - 'ogg-desc-link', 'ogg-dismiss', 'ogg-player-soundthumb', 'ogg-no-xiphqt' );
493 - $msgValues = array_map( 'wfMsg', $msgNames );
494 - $jsMsgs = Xml::encodeJsVar( (object)array_combine( $msgNames, $msgValues ) );
495 - $cortadoUrl = $wgCortadoJarFile;
496 - $scriptPath = self::getMyScriptPath();
497 - if( substr( $cortadoUrl, 0, 1 ) != '/'
498 - && substr( $cortadoUrl, 0, 4 ) != 'http' ) {
499 - $cortadoUrl = "$wgServer$scriptPath/$cortadoUrl";
500 - }
501 - $encCortadoUrl = Xml::encodeJsVar( $cortadoUrl );
502 - $encExtPathUrl = Xml::encodeJsVar( $scriptPath );
503 -
504 -
505 - $playTrackingJs = '';
506 - //Check for play tracking and output vars
507 - if( $wgEnablePlayTracking ) {
508 - $encPlayTracking = Xml::encodeJsVar( $wgPlayTrackingRate );
509 - $playTrackingJs = <<<EOT
510 -wgOggPlayer.playTracking = true;
511 -wgOggPlayer.playTrackingRate = $encPlayTracking
512 -EOT
513 -;
514 - }
515 -
516 -
517 - $out->addHeadItem( 'OggHandler', <<<EOT
 386+ $out->addHeadItem( 'OggHandler', <<<EOT
518387 <script type="text/javascript" src="$scriptPath/OggPlayer.js?$wgOggScriptVersion"></script>
519388 <script type="text/javascript">
520389 wgOggPlayer.msg = $jsMsgs;
521390 wgOggPlayer.cortadoUrl = $encCortadoUrl;
522391 wgOggPlayer.extPathUrl = $encExtPathUrl;
523 -$playTrackingJs;
524392 </script>
525393 <style type="text/css">
526394 .ogg-player-options {
@@ -531,8 +399,6 @@
532400 </style>
533401 EOT
534402 );
535 - }
536 -
537403 }
538404
539405 function parserTransformHook( $parser, $file ) {
@@ -549,30 +415,13 @@
550416 $instance->setHeaders( $outputPage );
551417 }
552418 }
553 - // Output an iframe version of the player for remote embedding)
554 - static function iframeOutputHook( &$title, &$article, $doOutput = true ) {
555 - global $wgTitle, $wgRequest, $wgOut, $wgEnableIframeEmbed;
556 - if( !$wgEnableIframeEmbed )
557 - return true; //continue normal if iframes are "off" (maybe throw a warning in the future)
558 -
559 - // Make sure we are in the right namespace and iframe=true was called:
560 - if( is_object( $wgTitle ) && $wgTitle->getNamespace() == NS_FILE &&
561 - $wgRequest->getVal('iframe') == 'true' &&
562 - $wgEnableIframeEmbed &&
563 - $doOutput ){
564 - output_iframe_page( $title );
565 - exit();
566 - return false;
567 - }
568 - return true;
569 - }
570419 }
571420
572421 class OggTransformOutput extends MediaTransformOutput {
573422 static $serial = 0;
574423
575424 function __construct( $file, $videoUrl, $thumbUrl, $width, $height, $length, $isVideo,
576 - $path, $noIcon = false, $offset )
 425+ $path, $noIcon = false )
577426 {
578427 $this->file = $file;
579428 $this->videoUrl = $videoUrl;
@@ -580,16 +429,12 @@
581430 $this->width = round( $width );
582431 $this->height = round( $height );
583432 $this->length = round( $length );
584 - $this->offset = round( $offset );
585433 $this->isVideo = $isVideo;
586434 $this->path = $path;
587435 $this->noIcon = $noIcon;
588436 }
589437
590438 function toHtml( $options = array() ) {
591 - global $wgEnableTemporalOggUrls, $wgVideoTagOut,
592 - $wgScriptPath, $wgEnableTimedText;
593 -
594439 wfLoadExtensionMessages( 'OggHandler' );
595440 if ( count( func_get_args() ) == 2 ) {
596441 throw new MWException( __METHOD__ .' called in the old style' );
@@ -605,7 +450,6 @@
606451 }
607452 // Normalize values
608453 $length = floatval( $this->length );
609 - $offset = floatval( $this->offset );
610454 $width = intval( $this->width );
611455 $height = intval( $this->height );
612456
@@ -614,348 +458,116 @@
615459 $thumbDivAttribs = array();
616460 $showDescIcon = false;
617461
618 - // Check for video tag output
619 - if( $wgVideoTagOut ){
620 - return $this->outputVideoTag($url, $width, $height, $length, $offset, $alt);
621 - }else{
622 - //oggHandler output:
623 - if ( $this->isVideo ) {
624 - $msgStartPlayer = wfMsg( 'ogg-play-video' );
 462+ if ( $this->isVideo ) {
 463+ $msgStartPlayer = wfMsg( 'ogg-play-video' );
 464+ $imgAttribs = array(
 465+ 'src' => $this->url,
 466+ 'width' => $width,
 467+ 'height' => $height,
 468+ 'alt' => $alt );
 469+ $playerHeight = $height;
 470+ } else {
 471+ // Sound file
 472+ if ( $height > 100 ) {
 473+ // Use a big file icon
 474+ global $wgStylePath;
625475 $imgAttribs = array(
626 - 'src' => $this->url,
627 - 'width' => $width,
628 - 'height' => $height,
629 - 'alt' => $alt );
630 - $playerHeight = $height;
 476+ 'src' => "$wgStylePath/common/images/icons/fileicon-ogg.png",
 477+ 'width' => 125,
 478+ 'height' => 125,
 479+ 'alt' => $alt,
 480+ );
631481 } else {
632 - // Sound file
633 - if ( $height > 100 ) {
634 - // Use a big file icon
635 - global $wgStylePath;
636 - $imgAttribs = array(
637 - 'src' => "$wgStylePath/common/images/icons/fileicon-ogg.png",
638 - 'width' => 125,
639 - 'height' => 125,
640 - 'alt' => $alt,
641 - );
642 - } else {
643 - // Make an icon later if necessary
644 - $imgAttribs = false;
645 - $showDescIcon = !$this->noIcon;
646 - //$thumbDivAttribs = array( 'style' => 'text-align: right;' );
647 - }
648 - $msgStartPlayer = wfMsg( 'ogg-play-sound' );
649 - $playerHeight = 35;
 482+ // Make an icon later if necessary
 483+ $imgAttribs = false;
 484+ $showDescIcon = !$this->noIcon;
 485+ //$thumbDivAttribs = array( 'style' => 'text-align: right;' );
650486 }
 487+ $msgStartPlayer = wfMsg( 'ogg-play-sound' );
 488+ $playerHeight = 35;
 489+ }
651490
652 - // Set $thumb to the thumbnail img tag, or the thing that goes where
653 - // the thumbnail usually goes
654 - $descIcon = false;
655 - if ( !empty( $options['desc-link'] ) ) {
656 - $linkAttribs = $this->getDescLinkAttribs( $alt );
657 - if ( $showDescIcon ) {
658 - // Make image description icon link
659 - $imgAttribs = array(
660 - 'src' => "$scriptPath/info.png",
661 - 'width' => 22,
662 - 'height' => 22,
663 - 'alt' => $alt,
664 - );
665 - $linkAttribs['title'] = wfMsg( 'ogg-desc-link' );
666 - $descIcon = Xml::tags( 'a', $linkAttribs,
667 - Xml::element( 'img', $imgAttribs ) );
668 - $thumb = '';
669 - } elseif ( $imgAttribs ) {
670 - $thumb = Xml::tags( 'a', $linkAttribs,
671 - Xml::element( 'img', $imgAttribs ) );
672 - } else {
673 - $thumb = '';
674 - }
675 - $linkUrl = $linkAttribs['href'];
 491+ // Set $thumb to the thumbnail img tag, or the thing that goes where
 492+ // the thumbnail usually goes
 493+ $descIcon = false;
 494+ if ( !empty( $options['desc-link'] ) ) {
 495+ $linkAttribs = $this->getDescLinkAttribs( $alt );
 496+ if ( $showDescIcon ) {
 497+ // Make image description icon link
 498+ $imgAttribs = array(
 499+ 'src' => "$scriptPath/info.png",
 500+ 'width' => 22,
 501+ 'height' => 22,
 502+ 'alt' => $alt,
 503+ );
 504+ $linkAttribs['title'] = wfMsg( 'ogg-desc-link' );
 505+ $descIcon = Xml::tags( 'a', $linkAttribs,
 506+ Xml::element( 'img', $imgAttribs ) );
 507+ $thumb = '';
 508+ } elseif ( $imgAttribs ) {
 509+ $thumb = Xml::tags( 'a', $linkAttribs,
 510+ Xml::element( 'img', $imgAttribs ) );
676511 } else {
677 - // We don't respect the file-link option, click-through to download is not appropriate
678 - $linkUrl = false;
679 - if ( $imgAttribs ) {
680 - $thumb = Xml::element( 'img', $imgAttribs );
681 - } else {
682 - $thumb = '';
683 - }
 512+ $thumb = '';
684513 }
 514+ $linkUrl = $linkAttribs['href'];
 515+ } else {
 516+ // We don't respect the file-link option, click-through to download is not appropriate
 517+ $linkUrl = false;
 518+ if ( $imgAttribs ) {
 519+ $thumb = Xml::element( 'img', $imgAttribs );
 520+ } else {
 521+ $thumb = '';
 522+ }
 523+ }
685524
686 - $id = "ogg_player_" . OggTransformOutput::$serial;
 525+ $id = "ogg_player_" . OggTransformOutput::$serial;
687526
688 - $playerParams = Xml::encodeJsVar( (object)array(
689 - 'id' => $id,
690 - 'videoUrl' => $url,
691 - 'width' => $width,
692 - 'height' => $playerHeight,
693 - 'length' => $length,
694 - 'offset' => $offset,
695 - 'linkUrl' => $linkUrl,
696 - 'isVideo' => $this->isVideo ) );
 527+ $playerParams = Xml::encodeJsVar( (object)array(
 528+ 'id' => $id,
 529+ 'videoUrl' => $url,
 530+ 'width' => $width,
 531+ 'height' => $playerHeight,
 532+ 'length' => $length,
 533+ 'linkUrl' => $linkUrl,
 534+ 'isVideo' => $this->isVideo ) );
697535
698 - $s = Xml::tags( 'div',
699 - array(
700 - 'id' => $id,
701 - 'style' => "width: {$width}px;" ),
702 - ( $thumb ? Xml::tags( 'div', array(), $thumb ) : '' ) .
703 - Xml::tags( 'div', array(),
704 - Xml::tags( 'button',
 536+ $s = Xml::tags( 'div',
 537+ array(
 538+ 'id' => $id,
 539+ 'style' => "width: {$width}px;" ),
 540+ ( $thumb ? Xml::tags( 'div', array(), $thumb ) : '' ) .
 541+ Xml::tags( 'div', array(),
 542+ Xml::tags( 'button',
 543+ array(
 544+ 'onclick' => "if (typeof(wgOggPlayer) != 'undefined') wgOggPlayer.init(false, $playerParams);",
 545+ 'style' => "width: {$width}px; text-align: center",
 546+ 'title' => $msgStartPlayer,
 547+ ),
 548+ Xml::element( 'img',
705549 array(
706 - 'onclick' => "if (typeof(wgOggPlayer) != 'undefined') wgOggPlayer.init(false, $playerParams);",
707 - 'style' => "width: {$width}px; text-align: center",
708 - 'title' => $msgStartPlayer,
709 - ),
710 - Xml::element( 'img',
711 - array(
712 - 'src' => "$scriptPath/play.png",
713 - 'width' => 22,
714 - 'height' => 22,
715 - 'alt' => $msgStartPlayer
716 - )
 550+ 'src' => "$scriptPath/play.png",
 551+ 'width' => 22,
 552+ 'height' => 22,
 553+ 'alt' => $msgStartPlayer
717554 )
718555 )
719 - ) .
720 - ( $descIcon ? Xml::tags( 'div', array(), $descIcon ) : '' )
721 - );
722 - return $s;
723 - }
724 - }
725 - /*
726 - * Output the inline video tag output
727 - */
728 - function outputVideoTag($url, $width, $height, $length, $offset, $alt){
729 - global $wgVideoPlayerSkin, $wgEnableTemporalOggUrls, $wgEnableTimedText;
730 - // Video tag output:
731 - if ( $this->isVideo ) {
732 - $playerHeight = $this->height;
733 - $thumb_url = $this->url;
734 - }else{
735 - // Sound file
736 - global $wgStylePath;
737 - $thumb_url = "$wgStylePath/common/images/icons/fileicon-ogg.png";
738 - if ( $height < 35 )
739 - $playerHeight = 35;
740 - else
741 - $playerHeight = $height;
742 - }
743 - $id = "ogg_player_" . OggTransformOutput::$serial;
744 - $linkAttribs = $this->getDescLinkAttribs( $alt );
745 - $videoAttr = array(
746 - 'id' => $id,
747 - 'src' => $url,
748 - 'style' => "width:{$width}px;height:{$playerHeight}px",
749 - 'poster' => $thumb_url,
750 - 'controls'=> 'true',
751 - 'durationHint' => $length,
752 - 'startOffset' => $offset,
753 - 'linkback' => $linkAttribs['href'],
754 - 'apiTitleKey' => $this->file->getTitle()->getDBKey()
 556+ )
 557+ ) .
 558+ ( $descIcon ? Xml::tags( 'div', array(), $descIcon ) : '' )
755559 );
756 -
757 - /*
758 - * Output inline metadata for video tag
759 - * this will eventually be phased out in favor of "ROE" type xml
760 - * representation of all media asset info.
761 - */
762 -
763 - // Init $timedTextSources string
764 - $timedTextSources = '';
765 - if( $this->file->getRepoName() != 'local' ){
766 -
767 - //Set the api provider name to "commons" for shared
768 - // ( provider names should have identified the provider
769 - // instead of the provider type "shared" )
770 - $apiProviderName = ( $this->file->getRepoName() == 'shared' ) ? 'commons': $this->file->getRepoName();
771 -
772 - $videoAttr[ 'apiProvider' ] = 'commons';
773 - } else if( $wgEnableTimedText ){
774 - // Get the list of subtitles available
775 - $params = new FauxRequest( array (
776 - 'action' => 'query',
777 - 'list' => 'allpages',
778 - 'apnamespace' => NS_TIMEDTEXT,
779 - 'aplimit' => 200,
780 - 'apprefix' => $this->file->getTitle()->getDBKey()
781 - ));
782 - $api = new ApiMain( $params );
783 - $api->execute();
784 - $data = & $api->getResultData();
785 -
786 - // Get the list of language Names
787 - $langNames = Language::getLanguageNames();
788 -
789 -
790 - if($data['query'] && $data['query']['allpages'] ){
791 - foreach( $data['query']['allpages'] as $na => $page ){
792 - $pageTitle = $page['title'];
793 - $tileParts = explode( '.', $pageTitle );
794 - if( count( $tileParts) >= 3 ){
795 - $subtitle_extension = array_pop( $tileParts );
796 - $languageKey = array_pop( $tileParts );
797 - }
798 - // If there is no valid language continue:
799 - if( !isset( $langNames[ $languageKey ] ) ){
800 - continue;
801 - }
802 - $textAttr = array(
803 - 'src' => "{$wgServer}{$wgScriptPath}/api.php?" .
804 - 'action=parse&format=json&page=' . $pageTitle,
805 - 'lang' => $languageKey,
806 - 'type' => 'text/mw-srt'
807 - );
808 - $timedTextSources.= Xml::tags( 'itext', $textAttr, '' );
809 - }
810 - }
811 - }
812 -
813 - if( $wgEnableTemporalOggUrls ){
814 - $videoAttr['URLTimeEncoding'] = 'true';
815 - }
816 -
817 - // Set player skin:
818 - if( $wgVideoPlayerSkin ){
819 - $videoAttr['class'] = htmlspecialchars ( $wgVideoPlayerSkin );
820 - }
821 -
822 - $s = Xml::tags( 'video', $videoAttr,
823 - Xml::tags('div', array(
824 - 'class'=>'videonojs',
825 - 'style'=>"overflow:hidden;".
826 - "width:{$width}px;height:{$playerHeight}px;".
827 - "border:solid thin black;padding:5px;"
828 - ),
829 - wfMsg('ogg-no-player-js', $url)
830 - ) .
831 - $timedTextSources
832 - );
833 -
834560 return $s;
835561 }
836562 }
837563
838564 class OggVideoDisplay extends OggTransformOutput {
839 - function __construct( $file, $videoUrl, $thumbUrl, $width, $height, $length, $path, $noIcon=false, $offset=0 ) {
840 - parent::__construct( $file, $videoUrl, $thumbUrl, $width, $height, $length, true, $path, false, $offset );
 565+ function __construct( $file, $videoUrl, $thumbUrl, $width, $height, $length, $path, $noIcon=false ) {
 566+ parent::__construct( $file, $videoUrl, $thumbUrl, $width, $height, $length, true, $path, false );
841567 }
842568 }
843569
844570 class OggAudioDisplay extends OggTransformOutput {
845 - function __construct( $file, $videoUrl, $width, $height, $length, $path, $noIcon = false, $offset=0 ) {
846 - parent::__construct( $file, $videoUrl, false, $width, $height, $length, false, $path, $noIcon, $offset );
 571+ function __construct( $file, $videoUrl, $width, $height, $length, $path, $noIcon = false ) {
 572+ parent::__construct( $file, $videoUrl, false, $width, $height, $length, false, $path, $noIcon );
847573 }
848574 }
849 -/* Utility functions*/
850 -
851 -
852 -/*
853 -* Output a minimal iframe for remote embedding (with mv_embed loaded via the script-loader if enabled)
854 -*/
855 -function output_iframe_page( $title ) {
856 - global $wgEnableIframeEmbed, $wgEnableTemporalOggUrls, $wgOut, $wgUser,
857 - $wgEnableScriptLoader;
858 -
859 - if(!$wgEnableIframeEmbed){
860 - throw new MWException( __METHOD__ .' is not enabled' );
861 - return false;
862 - }
863 -
864 - // Check for start end if temporal urls are enabled:
865 - if( $wgEnableTemporalOggUrls ){
866 - $videoParam[ 'start' ] = ( isset( $_GET['starttime'] ) ) ? $_GET['starttime']: '';
867 - $videoParam[ 'end' ] = ( isset( $_GET['endtime'] ) ) ? $_GET['endtime']: '';
868 - }
869 -
870 - $videoParam['width'] = ( isset( $_GET['width'] ) ) ? intval( $_GET['width'] ) : '400';
871 - $videoParam['height'] = ( isset( $_GET['height'] ) ) ? intval( $_GET['height'] ) : '300';
872 -
873 - // Build the html output:
874 - $file = wfFindFile( $title );
875 - $thumb = $file->transform( $videoParam );
876 - $out = new OutputPage();
877 - $file->getHandler()->setHeaders( $out );
878 - $out->addCoreScripts2Top();
879 -
880 -?>
881 -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
882 - <html xmlns="http://www.w3.org/1999/xhtml">
883 - <head>
884 - <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
885 - <title> iframe embed </title>
886 - <style type="text/css">
887 - body {
888 - margin-left: 0px;
889 - margin-top: 0px;
890 - margin-right: 0px;
891 - margin-bottom: 0px;
892 - }
893 - </style>
894 - <?php
895 - // Similar to $out->headElement (but without css)
896 - echo $out->getHeadScripts();
897 - echo $out->getHeadLinks();
898 - echo $out->getHeadItems();
899 - ?>
900 - </head>
901 - <body>
902 - <?php echo $thumb->toHtml(); ?>
903 - </body>
904 - </html>
905 -<?php
906 -}
907 -/*
908 -* Converts seconds duration to npt format:
909 -* hh:mm:ss.ms
910 -*/
911 -if(!function_exists('seconds2npt')){
912 - function seconds2npt( $seconds, $short = false ) {
913 - $dur = time_duration_2array( $seconds );
914 - if( ! $dur )
915 - return null;
916 - // Output leading zeros (for min,sec):
917 - if ( $dur['hours'] == 0 && $short == true ) {
918 - return sprintf( "%2d:%02d", $dur['minutes'], $dur['seconds'] );
919 - } else {
920 - return sprintf( "%d:%02d:%02d", $dur['hours'], $dur['minutes'], $dur['seconds'] );
921 - }
922 - }
923 -}
924 -/*
925 - * Convert seconds to time unit array
926 - */
927 -if(!function_exists('time_duration_2array')){
928 - function time_duration_2array ( $seconds, $periods = null ) {
929 - // Define time periods
930 - if ( !is_array( $periods ) ) {
931 - $periods = array (
932 - 'years' => 31556926,
933 - 'months' => 2629743,
934 - 'weeks' => 604800,
935 - 'days' => 86400,
936 - 'hours' => 3600,
937 - 'minutes' => 60,
938 - 'seconds' => 1
939 - );
940 - }
941 -
942 - // Loop
943 - $seconds = (float) $seconds;
944 - foreach ( $periods as $period => $value ) {
945 - $count = floor( $seconds / $value );
946 - if ( $count == 0 ) {
947 - // Must include hours minutes and seconds even if they are 0
948 - if ( $period == 'hours' || $period == 'minutes' || $period == 'seconds' ) {
949 - $values[$period] = 0;
950 - }
951 - continue;
952 - }
953 - $values[$period] = sprintf( "%02d", $count );
954 - $seconds = $seconds % $value;
955 - }
956 - // Return
957 - if ( empty( $values ) ) {
958 - $values = null;
959 - }
960 - return $values;
961 - }
962 -}
Index: trunk/extensions/OggHandler/OggHandler.i18n.php
@@ -24,8 +24,6 @@
2525 'ogg-play-sound' => 'Play sound',
2626 'ogg-no-player' => 'Sorry, your system does not appear to have any supported player software.
2727 Please <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">download a player</a>.',
28 - 'ogg-no-player-js' => 'Sorry, your system either has JavaScript disabled or does not have any supported player.<br />
29 -You can <a href="$1">download the clip</a> or <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">download a player</a> to play the clip in your browser.',
3028 'ogg-no-xiphqt' => 'You do not appear to have the XiphQT component for QuickTime.
3129 QuickTime cannot play Ogg files without this component.
3230 Please <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">download XiphQT</a> or choose another player.',
@@ -177,8 +175,6 @@
178176 'ogg-play-video' => 'عرض الفيديو',
179177 'ogg-play-sound' => 'عرض الصوت',
180178 'ogg-no-player' => 'معذرة ولكن يبدو أنه لا يوجد لديك برنامج عرض مدعوم. من فضلك ثبت <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">الجافا</a>.',
181 - 'ogg-no-player-js' => 'عذرًا، جافاسكربت معطلة في نظامك أو أن نظامك لا يحتوي أي مشغّل مدعوم.<br />
182 -تستطيع <a href="$1">تنزيل المقطع</a><br /> أو <br /><a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">تنزيل مشغّل</a> لتشغيل المقطع في متصفحك.',
183179 'ogg-no-xiphqt' => 'لا يبدو أنك تملك مكون XiphQT لكويك تايم.
184180 كويك تايم لا يمكنه عرض ملفات Ogg بدون هذا المكون.
185181 من فضلك <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">حمل XiphQT</a> أو اختر برنامجا آخر.',
@@ -378,8 +374,6 @@
379375 'ogg-play-video' => 'Прайграць відэа',
380376 'ogg-play-sound' => 'Прайграць аўдыё',
381377 'ogg-no-player' => 'Прабачце, Ваша сыстэма ня мае неабходнага праграмнага забесьпячэньня для прайграваньня файлаў. Калі ласка, <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">загрузіце прайгравальнік</a>.',
382 - 'ogg-no-player-js' => 'Прабачце, але ў Вашай сыстэме адключаны JavaScript, альбо яна ня мае ніякага адпаведнага прайгравальніка.<br />
383 -Вы можаце <a href="$1">загрузіць кліп</a> альбо <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">загрузіць прайгравальнік</a> для прайграваньня кліпу ў Вашым браўзэры.',
384378 'ogg-no-xiphqt' => 'Адсутнічае кампанэнт XiphQT для QuickTime.
385379 QuickTime ня можа прайграваць файлы ў фармаце Ogg бяз гэтага кампанэнта.
386380 Калі ласка, <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">загрузіце XiphQT</a> альбо выберыце іншы прайгравальнік.',
@@ -512,8 +506,6 @@
513507 'ogg-play-sound' => 'Sviraj zvuk',
514508 'ogg-no-player' => 'Žao nam je, Vaš sistem izgleda da nema nikakvog podržanog softvera za pregled.
515509 Molimo Vas <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">da skinete preglednik</a>.',
516 - 'ogg-no-player-js' => 'Žao nam je, Vaš sistem ima onemogućen JavaScript ili nemate nijedan podržani player.<br />
517 -Možete <a href="$1">skinuti snimak</a> ili <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">skinuti player</a> da biste mogli pogledati snimak u Vašem pregledniku.',
518510 'ogg-no-xiphqt' => 'Izgleda da nemate XiphQT komponentu za program QuickTime.
519511 QuickTime ne može reproducirati Ogg datoteke bez ove komponente.
520512 Molimo Vas da <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">skinete XiphQT</a> ili da odaberete drugi preglednik.',
@@ -552,8 +544,6 @@
553545 'ogg-play-video' => 'Reprodueix vídeo',
554546 'ogg-play-sound' => 'Reprodueix so',
555547 'ogg-no-player' => 'No teniu instaŀlat cap reproductor acceptat. Podeu <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">descarregar-ne</a> un.',
556 - 'ogg-no-player-js' => 'Disculpau, o el vostre sistema té el Javascript deshabilitat o no té un reproductor adequat.<br />
557 -Podeu <a href="$1">descarregar l\'arxiu</a> o bé <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">descarregar un reproductor</a> per reproduir l\'arxiu al vostre navegador.',
558548 'ogg-no-xiphqt' => 'No disposeu del component XiphQT al vostre QuickTime. Aquest component és imprescindible per a que el QuickTime pugui reproduir fitxers OGG. Podeu <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">descarregar-lo</a> o escollir un altre reproductor.',
559549 'ogg-player-videoElement' => 'Suport natiu del navegador',
560550 'ogg-player-oggPlugin' => 'Connector del navegador',
@@ -588,8 +578,6 @@
589579 'ogg-play-video' => 'Přehrát video',
590580 'ogg-play-sound' => 'Přehrát zvuk',
591581 'ogg-no-player' => 'Váš systém zřejmě neobsahuje žádný podporovaný přehrávač. <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">Váš systém zřejmě neobsahuje žádný podporovaný přehrávač. </a>.',
592 - 'ogg-no-player-js' => 'Je nám líto, ale máte vypnutý JavaScript nebo váš systém neobsahuje žádný podporovaný přehrávač.<br />
593 -Můžete si <a href="$1">klip stáhnout</a> nebo <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download/cs">si nainstalovat přehrávač,</a> abyste si mohli klip přehrát v&nbsp;prohlížeči.',
594582 'ogg-no-xiphqt' => 'Nemáte rozšíření XiphQT pro QuickTime. QuickTime nemůže přehrávat soubory ogg bez tohoto rozšíření. <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">Stáhněte XiphQT</a> nebo vyberte jiný přehrávač.',
595583 'ogg-player-videoElement' => 'Vestavěná podpora v prohlížeči',
596584 'ogg-player-oggPlugin' => 'Zásuvný modul do prohlížeče',
@@ -624,8 +612,6 @@
625613 'ogg-play-sound' => 'Afspil lyd',
626614 'ogg-no-player' => 'Desværre ser det ud til at dit system har nogen understøttede medieafspillere.
627615 <a href="http://mediawiki.org/wiki/Extension:OggHandler/Client_download">Download venligst en afspiller</a>.',
628 - 'ogg-no-player-js' => 'Beklager, dit system har enten JavaScript slået fra eller det har ingen understøttet afspiller.<br />
629 -Du kan <a href="$1">downloade klippet</a> eller <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">downloade en afspiller</a> for at afspille klippet i din browser.',
630616 'ogg-no-xiphqt' => 'Det ser ud til at du ikke har XiphQT-komponenten til QuickTime.
631617 QuickTime kan ikke afspille Ogg-file uden denne komponent.
632618 <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">Download venligst XiphQT</a> eller vælg en anden afspiller.',
@@ -664,8 +650,6 @@
665651 'ogg-play-video' => 'Video abspielen',
666652 'ogg-play-sound' => 'Audio abspielen',
667653 'ogg-no-player' => 'Dein System scheint über keine Abspielsoftware zu verfügen. Bitte installiere <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">eine Abspielsoftware</a>.',
668 - 'ogg-no-player-js' => 'Entschuldigung, auf deinem System ist JavaScript deaktiviert oder es ist keine unterstützte Abspielsoftware vorhanden.<br />
669 -Du kannst <a href="$1">den Clip herunterladen</a> oder <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">eine Abspielsoftware herunterladen</a>, um den Clip im Browser abzuspielen.',
670654 'ogg-no-xiphqt' => 'Dein System scheint nicht über die XiphQT-Komponente für QuickTime zu verfügen. QuickTime kann ohne diese Komponente keine Ogg-Dateien abspielen.Bitte <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">lade XiphQT</a> oder wähle eine andere Abspielsoftware.',
671655 'ogg-player-videoElement' => 'Vorhandene Browserunterstützung',
672656 'ogg-player-oggPlugin' => 'Browser-Plugin',
@@ -685,8 +669,6 @@
686670 */
687671 $messages['de-formal'] = array(
688672 'ogg-no-player' => 'Ihr System scheint über keine Abspielsoftware zu verfügen. Bitte installieren Sie <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">eine Abspielsoftware</a>.',
689 - 'ogg-no-player-js' => 'Entschuldigung, auf Ihrem System ist JavaScript deaktiviert oder es ist keine unterstützte Abspielsoftware vorhanden.<br />
690 -Sie können <a href="$1">den Clip herunterladen</a> oder <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">eine Abspielsoftware herunterladen</a>, um den Clip im Browser abzuspielen.',
691673 'ogg-no-xiphqt' => 'Ihr System scheint nicht über die XiphQT-Komponente für QuickTime zu verfügen. QuickTime kann ohne diese Komponente keine Ogg-Dateien abspielen.Bitte <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">laden Sie XiphQT</a> oder wählen Sie eine andere Abspielsoftware.',
692674 );
693675
@@ -711,8 +693,6 @@
712694 'ogg-play-sound' => "veng bıd' kaykerdış",
713695 'ogg-no-player' => 'ma meluli, wina aseno ke sistemê şıma wayirê softwareyi yo player niyo.
714696 kerem kerê <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">yew player biyare war</a>.',
715 - 'ogg-no-player-js' => 'ma meluli, sistemê şıma de ya JavaScript battal o ya zi yew player çino.<br />
716 -<a href="$1">şıma eşkeni klib biyari war</a> ya zi şıma eşkeni cıgêrayoxê xo de klib bıdi kaykerdış, qey xebıtnayişi <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">şıma eşkeni yew player biyari war</a>.',
717697 'ogg-no-xiphqt' => 'qey QuickTimeyi wina aseno ke şıma wayirê parçeyê XiphQTi niyê.
718698 heta ke parçeyê QuickTimeyi çinibi dosyayê Oggyi nêxebıtiyeni.
719699 kerem kerê<a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">XiphQT\'i biyar war</a> ya zi yewna player bıvıcinê.',
@@ -748,8 +728,6 @@
749729 'ogg-play-sound' => 'Zuk wótegraś',
750730 'ogg-no-player' => 'Wódaj, twój system njezda se pódpěrany wótegrawak měś.
751731 Pšosym <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">ześěgni wótegrawak</a>.',
752 - 'ogg-no-player-js' => 'Wódaj, w twójom systemje pak JavaScript jo znjemóžnjony pak njejo pódpěrany wótegrawak.<br />
753 -Móžoš <a href="$1">klip ześěgnuś</a> abo <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">wótegrawak ześěgnuś</a>, aby klip w swójom wobglědowaku wótegrał.',
754732 'ogg-no-xiphqt' => 'Zda se, až njamaš komponentu XiphQT za QuickTime.
755733 QuickTime njamóžo ogg-dataje bźez toś teje komponenty wótegraś.
756734 Pšosym <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Cient_download">ześěgni XiphQT</a> abo wubjeŕ drugi wótegrawak.',
@@ -788,8 +766,6 @@
789767 'ogg-play-sound' => 'Αναπαραγωγή ήχου',
790768 'ogg-no-player' => 'Συγγνώμη, το σύστημά σας δεν φαίνεται να έχει κάποιο υποστηριζόμενο λογισμικό αναπαραγωγής.<br />
791769 Παρακαλώ <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">κατεβάστε ένα πρόγραμμα αναπαραγωγής</a>.',
792 - 'ogg-no-player-js' => 'Συγνώμη, το σύστημά σας είτε έχει απενεργοποιημένη την JavaScript είτε δεν έχει κάποιον υποστηριζόμενο αναπαραγωγέα.<br />
793 -Μπορείτε <a href="$1">να κατεβάσετε το κλιπ</a> ή <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">να κατεβάσετε έναν αναπαραγωγέα</a> να αναπαράγει το κλιπ στον πλοηγό σας.',
794770 'ogg-no-xiphqt' => 'Δεν φαίνεται να έχετε το στοιχείο XiphQT για το πρόγραμμα QuickTime.<br />
795771 Το πρόγραμμα QuickTime δεν μπορεί να αναπαράγει αρχεία Ogg χωρίς αυτό το στοιχείο.<br />
796772 Παρακαλώ <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">κατεβάστε το XiphQT</a> ή επιλέξτε ένα άλλο πρόγραμμα αναπαραγωγής.',
@@ -827,8 +803,6 @@
828804 'ogg-play-sound' => 'Aŭdigi sonon',
829805 'ogg-no-player' => 'Ŝajnas ke via sistemo malhavas ian medilegilan programon por legi tian dosieron.
830806 Bonvolu <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">elŝuti iun</a>.',
831 - 'ogg-no-player-js' => 'Bedaŭrinde, via sistema aŭ estas JavaScript-malŝalta, aŭ ne havas iun subtenitan medio-ludanton.<br />
832 -Vi povas <a href="$1">elŝuti la dosieron</a> aŭ <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">elŝuti medio-ludanton</a> por ludi la dosieron en via retumilo.',
833807 'ogg-no-xiphqt' => 'Ŝajnas ke vi malhavas la XiphQT-komponaĵon por QuickTime.
834808 QuickTime ne kapablas aŭdigi sondosierojn sentiu komponaĵo.
835809 Bonvolu <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">elŝuti XiphQT</a> aux elektu alian legilon.',
@@ -869,8 +843,6 @@
870844 'ogg-play-sound' => 'Reproducir sonido',
871845 'ogg-no-player' => 'Lo sentimos, su sistema parece no tener disponible un programa para reproducción de archivos multimedia.
872846 Por favor <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">descargue un reproductor</a>.',
873 - 'ogg-no-player-js' => 'Disculpa, Tu sistema tiene ya sea JavaScript deshabilitado o no tiene ningún reproductor habilitado.<br />
874 -Puedes <a href="$1">descargar el clip</a> o <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">descargar un reproductor</a> para reproducir el clip en u navegador.',
875847 'ogg-no-xiphqt' => 'Parece que Ud. no tiene el componente XiphQT de QuickTime.
876848 QuckTime no puede reproducir archivos en formato Ogg sin este componente.
877849 Por favor <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">descargue XiphQT</a> o elija otro reproductor de archivos multimedia.',
@@ -987,8 +959,6 @@
988960 'ogg-play-video' => 'Toista video',
989961 'ogg-play-sound' => 'Soita ääni',
990962 'ogg-no-player' => 'Järjestelmästäsi ei löytynyt mitään tuetuista soitinohjelmista. Voit ladata sopivan <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">soitinohjelman</a>.',
991 - 'ogg-no-player-js' => 'Valitettavasti järjestelmästäsi on otettu JavaScript pois käytöstä tai siinä ei ole yhtään tuettua soitinta.<br />
992 -Voit <a href="$1">ladata videoleikkeen</a> tai <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">ladata soittimen</a>, joka toimii selaimessasi.',
993963 'ogg-no-xiphqt' => 'Tarvittavaa QuickTimen XiphQT-komponenttia ei löytynyt. QuickTime ei voi toistaa Ogg-tiedostoja ilman tätä komponenttia. <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">Lataa XiphQT</a> tai valitse toinen soitin.',
994964 'ogg-player-videoElement' => 'Luontainen selaintuki',
995965 'ogg-player-oggPlugin' => 'Selainlaajennos',
@@ -1034,8 +1004,6 @@
10351005 'ogg-play-video' => 'Lire la vidéo',
10361006 'ogg-play-sound' => 'Lire le son',
10371007 'ogg-no-player' => 'Désolé, votre système ne possède apparemment aucun des lecteurs supportés. Veuillez installer <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download/fr">un des lecteurs supportés</a>.',
1038 - 'ogg-no-player-js' => 'Désolé, sur votre système, soit JavaScript est désactivé, soit vous ne possédez pas de lecteur supporté.<br />
1039 -Vous pouvez <a href="$1">télécharger l’extrait</a><br /> ou <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">télécharger un lecteur</a> pour lire l’extrait dans votre navigateur.',
10401008 'ogg-no-xiphqt' => 'Vous n’avez apparemment pas le composant XiphQT pour Quicktime. Quicktime ne peut pas lire les fichiers Ogg sans ce composant. Veuillez <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download/fr">télécharger XiphQT</a> ou choisir un autre lecteur.',
10411009 'ogg-player-videoElement' => 'Support du navigateur natif',
10421010 'ogg-player-oggPlugin' => 'Module complémentaire du navigateur',
@@ -1069,8 +1037,6 @@
10701038 'ogg-play-sound' => 'Liére lo son',
10711039 'ogg-no-player' => 'Dèsolâ, aparament voutron sistèmo at gins de liésor recognu.
10721040 Volyéd enstalar <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download/fr">yon des liésors recognus</a>.',
1073 - 'ogg-no-player-js' => 'Dèsolâ, sur voutron sistèmo, ou ben JavaScript est dèsactivâ, ou ben vos avéd gins de liésor recognu.<br />
1074 -Vos pouede <a href="$1">tèlèchargiér lo clipe</a> ou ben <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">tèlèchargiér un liésor</a> por liére lo clipe dens voutron navigator.',
10751041 'ogg-no-xiphqt' => 'Aparament vos avéd pas lo composent XiphQT por QuickTime.
10761042 QuickTime pôt pas liére los fichiérs Ogg sen cél composent.
10771043 Volyéd <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download/fr">tèlèchargiér XiphQT</a> ou ben chouèsir un ôtro liésor.',
@@ -1144,8 +1110,6 @@
11451111 'ogg-play-video' => 'Reproducir vídeo',
11461112 'ogg-play-sound' => 'Reproducir o son',
11471113 'ogg-no-player' => 'Parece que o seu sistema non dispón de software de reprodución axeitado. <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">Instale un reprodutor</a>.',
1148 - 'ogg-no-player-js' => 'Sentímolo, ou o seu sistema ten o Javascript desactivado ou non ten ningún reprodutor válido.<br />
1149 -Pode <a href="$1">descargar o vídeo</a> ou <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">descargar un reprodutor</a> para poder ver o vídeo no seu navegador.',
11501114 'ogg-no-xiphqt' => 'Parece que non dispón do compoñente XiphQT para QuickTime. QuickTime non pode reproducir ficheiros Ogg sen este componente. <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">Instale XiphQT</a> ou escolla outro reprodutor.',
11511115 'ogg-player-videoElement' => 'Soporte do navegador nativo',
11521116 'ogg-player-oggPlugin' => 'Complemento do navegador',
@@ -1192,8 +1156,6 @@
11931157 'ogg-play-video' => 'Video abspiile',
11941158 'ogg-play-sound' => 'Audio abspiile',
11951159 'ogg-no-player' => 'Dyy Syschtem het schyyns kei Abspiilsoftware. Bitte installier <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">e Abspiilsoftware</a>.',
1196 - 'ogg-no-player-js' => 'Excusez, uf Dyym Syschtem isch JavaScript deaktiviert oder s het kei unterstitzti Abspilsoftware.<br />
1197 -Du chasch <a href="$1">dr Clip abelade</a> oder <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">e Abspilsoftware abelade</a> go dr Clip im Browser abspile.',
11981160 'ogg-no-xiphqt' => 'Dyy Syschtem het schyyns d XiphQT-Komponent fir QuickTime nit. QuickTime cha ohni die Komponent kei Ogg-Dateie abspiile. Bitte <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">lad XiphQT</a> oder wehl e anderi Abspiilsoftware.',
11991161 'ogg-player-videoElement' => 'Vorhandeni Browserunterstitzig',
12001162 'ogg-player-oggPlugin' => 'Browser-Plugin',
@@ -1235,8 +1197,6 @@
12361198 'ogg-play-video' => 'נגן וידאו',
12371199 'ogg-play-sound' => 'נגן שמע',
12381200 'ogg-no-player' => 'מצטערים, נראה שהמערכת שלכם אינה כוללת תוכנת נגן נתמכת. אנא <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">הורידו נגן</a>.',
1239 - 'ogg-no-player-js' => 'אנו מתנצלים, אך התמיכה ב־JavaScript אינה פעילה במערכת שלכם או שאין לכם נגן נתמך.<br />
1240 -תוכלו <a href="$1">להוריד את הסרטון</a> או <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">להוריד נגן</a> כדי לנגן את הסרטון בדפדפן שלכם.',
12411201 'ogg-no-xiphqt' => 'נראה שלא התקנתם את רכיב XiphQT של QuickTime, אך QuickTime אינו יכול לנגן קובצי Ogg בלי רכיב זה. אנא <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">הורידו את XiphQT</a> או בחרו נגן אחר.',
12421202 'ogg-player-videoElement' => 'תמיכה טבעית של הדפדפן',
12431203 'ogg-player-oggPlugin' => 'תוסף לדפדפן',
@@ -1308,8 +1268,6 @@
13091269 'ogg-play-video' => 'Pokreni video',
13101270 'ogg-play-sound' => 'Sviraj zvuk',
13111271 'ogg-no-player' => "Oprostite, izgleda da Vaš operacijski sustav nema instalirane medijske preglednike. Molimo <a href=\"http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download\">instalirajte medijski preglednik (''player'')</a>.",
1312 - 'ogg-no-player-js' => 'Nažalost, Vaš sustav ili ima onemogućen JavaScript ili nema neki od podržanih uređaja za reprodukciju. <br />
1313 -Možete <a href="$1">preuzeti isječak</a> ili <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">preuzeti uređaj</a> za reprodukciju isječka u Vašem pregledniku.',
13141272 'ogg-no-xiphqt' => "Nemate instaliranu XiphQT komponentu za QuickTime (ili je neispravno instalirana). QuickTime ne može pokretati Ogg datoteke bez ove komponente. Molimo <a href=\"http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download\">instalirajte XiphQT</a> ili izaberite drugi preglednik (''player'').",
13151273 'ogg-player-videoElement' => 'Ugrađena podrška za preglednik',
13161274 'ogg-player-oggPlugin' => 'Plugin preglednika',
@@ -1344,8 +1302,6 @@
13451303 'ogg-play-video' => 'Widejo wothrać',
13461304 'ogg-play-sound' => 'Zynk wothrać',
13471305 'ogg-no-player' => 'Bohužel twój system po wšěm zdaću nima wothrawansku software. Prošu <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">sćehń wothrawak</a>.',
1348 - 'ogg-no-player-js' => 'Wodaj, na twojim systemje je pak JavaScript znjemóžnjeny pak nima podpěrany wothrawak.<br />
1349 -Móžeš <a href="$1">klip sćahnyć</a> abo <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">wothrawak sćahnyć</a>, zo by klip w swojim wobhladowaku wothrał.',
13501306 'ogg-no-xiphqt' => 'Po wšěm zdaću nimaš komponentu XiphQT za QuickTime. QuickTime njemóže Ogg-dataje bjez tuteje komponenty wothrawać. Prošu <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">sćehń XiphQT</a> abo wubjer druhi wothrawak.',
13511307 'ogg-player-videoElement' => 'Element <video>',
13521308 'ogg-player-oggPlugin' => 'Tykač Ogg',
@@ -1388,8 +1344,6 @@
13891345 'ogg-play-video' => 'Videó lejátszása',
13901346 'ogg-play-sound' => 'Hang lejátszása',
13911347 'ogg-no-player' => 'Sajnáljuk, de úgy tűnik, hogy nem rendelkezel a megfelelő lejátszóval. Amennyiben le szeretnéd játszani, <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">tölts le egyet</a>.',
1392 - 'ogg-no-player-js' => 'Sajnáljuk, de úgy tűnik, hogy le van tiltva a JavaScript, vagy a rendszereden nincs egyetlen támogatott lejátszó sem.<br />
1393 -<a href="$1">Letöltheted a klipet</a> vagy <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">letölthetsz egy lejátszót</a> a klip böngészőben való lejátszásához.',
13941348 'ogg-no-xiphqt' => 'Úgy tűnik, nem rendelkezel a QuickTime-hoz való XiphQT összetevővel. Enélkül a QuickTime nem tudja lejátszani az Ogg fájlokat. A lejátszáshoz tölts le egyet <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">innen</a>, vagy válassz másik lejátszót.',
13951349 'ogg-player-videoElement' => 'A böngésző támogatja',
13961350 'ogg-player-oggPlugin' => 'Beépülő modul böngészőhöz',
@@ -1423,8 +1377,6 @@
14241378 'ogg-play-sound' => 'Sonar audio',
14251379 'ogg-no-player' => 'Excusa, ma il pare que non es installate alcun lector compatibile in tu systema.
14261380 Per favor <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">discarga un lector.</a>',
1427 - 'ogg-no-player-js' => 'Pardono, tu systema o ha JavaScript disactivate o non ha un reproductor supportate.<br />
1428 -Tu pote <a href="$1">discargar le clip</a> o <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">discargar un reproductor</a> pro reproducer le clip in tu navigator.',
14291381 'ogg-no-xiphqt' => 'Pare que tu non ha le componente XiphQT pro QuickTime.
14301382 Sin iste componente, QuickTime non sape leger le files Ogg.
14311383 Per favor <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">discarga XiphQT</a> o selige un altere lector.',
@@ -1463,8 +1415,6 @@
14641416 'ogg-play-sound' => 'Putar suara',
14651417 'ogg-no-player' => 'Maaf, sistem Anda tampaknya tak memiliki satupun perangkat lunak pemutar yang mendukung.
14661418 Silakan <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">mengunduh salah satu pemutar</a>.',
1467 - 'ogg-no-player-js' => 'Maaf, sistem anda menonaktifkan JavaScript atau tidak memiliki pemutar yang mendukung. <br />
1468 -Anda dapat <a href="$1">mengunduh klip</a> atau <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download"> mengunduh pemutar </ a> untuk memainkan klip video pada browser Anda.',
14691419 'ogg-no-xiphqt' => 'Tampaknya Anda tak memiliki komponen XiphQT untuk QuickTime. QuickTime tak dapat memutar berkas Ogg tanpa komponen ini. Silakan <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">mengunduh XiphQT</a> atau pilih pemutar lain.',
14701420 'ogg-player-videoElement' => 'elemen <video>',
14711421 'ogg-player-oggPlugin' => 'plugin Ogg',
@@ -1528,8 +1478,6 @@
15291479 'ogg-play-video' => 'Riproduci il filmato',
15301480 'ogg-play-sound' => 'Riproduci il file sonoro',
15311481 'ogg-no-player' => 'Siamo spiacenti, ma non risulta installato alcun software di riproduzione compatibile. Si prega di <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">scaricare un lettore</a> adatto.',
1532 - 'ogg-no-player-js' => 'Il sistema in uso ha JavaScript disabilitato o non ha alcun riproduttore supportato.<br />
1533 -È possibile <a href="$1">scaricare il clip</a>o<a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">scaricare un riproduttore</a> per visualizzare il clip nel proprio browser.',
15341482 'ogg-no-xiphqt' => 'Non risulta installato il componente XiphQT di QuickTime. Senza tale componente non è possibile la riproduzione di file Ogg con QuickTime. Si prega di <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">scaricare XiphQT</a> o scegliere un altro lettore.',
15351483 'ogg-player-videoElement' => 'Supporto browser nativo',
15361484 'ogg-player-oggPlugin' => 'Plugin browser',
@@ -1565,8 +1513,6 @@
15661514 'ogg-play-video' => '動画を再生',
15671515 'ogg-play-sound' => '音声を再生',
15681516 'ogg-no-player' => '申し訳ありません、あなたのシステムには対応する再生ソフトウェアがインストールされていないようです。<a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">ここからダウンロードしてください</a>。',
1569 - 'ogg-no-player-js' => '申し訳ありません、あなたのシステムでは JavaScript が無効になっているか、対応したプレイヤーをもっていません。<br />
1570 -<a href="$1">クリップをダウンロード</a>するか、または<a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">プレイヤーをダウンロード</a>してブラウザでクリップを再生することができます。',
15711517 'ogg-no-xiphqt' => 'QuickTime 用 XiphQT コンポーネントがインストールされていないようです。QuickTime で Ogg ファイルを再生するには、このコンポーネントが必要です。<a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">ここから XiphQT をダウンロードする</a>か、別の再生ソフトをインストールしてください。',
15721518 'ogg-player-videoElement' => 'ネイティヴ・ブラウザをサポート',
15731519 'ogg-player-oggPlugin' => 'ブラウザ・プラグイン',
@@ -1806,8 +1752,6 @@
18071753 'ogg-play-video' => '영상 재생하기',
18081754 'ogg-play-sound' => '소리 재생하기',
18091755 'ogg-no-player' => '죄송합니다. 이 시스템에는 재생을 지원하는 플레이어가 설치되지 않은 것 같습니다. <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">플레이어를 내려받으세요.</a>',
1810 - 'ogg-no-player-js' => '죄송합니다, 당신의 시스템은 자바스크립트를 지원하지 않거나 지원하는 미디어 플레이어가 설치되어 있지 않습니다.<br />
1811 -<a href="$1">미디어 클립을 다운로드</a>하거나, <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">미디어 플레이어를 다운로드</a>할 수 있습니다.',
18121756 'ogg-no-xiphqt' => 'QuickTime의 XiphQT 구성 요소가 없는 것 같습니다.
18131757 QuickTime은 이 구성 요소 없이는 Ogg 파일을 재생할 수 없습니다.
18141758 <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download"> XiphQT를 내려받거나</a> 다른 플레이어를 선택하십시오.',
@@ -1851,8 +1795,6 @@
18521796 'ogg-no-player' => 'Deijt mer leid, süüd_esu uß, wi wann Dinge Kompjutor kei
18531797 Affspellprojramm hät, wat mer öngerstoze däte.
18541798 Beß esu joot, un <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">donn e Affspellprojramm erunger lade</a>.',
1855 - 'ogg-no-player-js' => 'Deit mer leid, Dinge Rääschner hät entweeder JavaSkrepp afjeschalldt udder kei zopaß Affspellprojramm.<br />
1856 -Do kanns <a href="$1">di Dattei eronger laade</a> udder en <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">zopaß Affspellprojramm eronger laade</a> öm dat Schtöck en Dingen Brauser affzeschpelle.',
18571799 'ogg-no-xiphqt' => 'Deijt mer leid, süüd_esu uß, wi wann Dinge Kompjutor nit
18581800 dat XiphQT Affspellprojrammstöck för <i lang="en">QuickTime</i> hät,
18591801 ävver <i lang="en">QuickTime</i> kann <i lang="en">Ogg</i>-Dateie
@@ -2023,8 +1965,6 @@
20241966 'ogg-play-sound' => 'Слушни аудио снимка',
20251967 'ogg-no-player' => 'Изгледа дека вашиот систем нема инсталирано било каков софтвер за преслушување/прегледување на аудио или видео записи.
20261968 Можете <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">да симнете некој софтвер за оваа намена од тука</a>.',
2027 - 'ogg-no-player-js' => 'Жалиме, но вашиот систем или има оневозможено JavaScript или нема поддржан преслушувач.<br />
2028 -Можете да <a href="$1">ја преземете снимката</a><br />или да<br /><a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">преземете преслушувач</a> за да ја пуштите снимката во вашиот прелистувач.',
20291969 'ogg-no-xiphqt' => 'Изгледа ја немате инсталирано XiphQT компонентата за QuickTime.
20301970 QuickTime не може да преслушува/прегледува Ogg податотеки без оваа компонента.
20311971 Можете да го <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">симнете XiphQT</a> или да изберете некој друг софтвер за преслушување/прегледување.',
@@ -2069,8 +2009,6 @@
20702010 'ogg-play-video' => 'വീഡിയോ പ്രവര്‍ത്തിപ്പിക്കുക',
20712011 'ogg-play-sound' => 'ശബ്ദം പ്രവര്‍ത്തിപ്പിക്കുക',
20722012 'ogg-no-player' => 'ക്ഷമിക്കണം. താങ്കളുടെ കമ്പ്യൂട്ടറില്‍ ഓഗ് പ്രമാണം പ്രവര്‍ത്തിപ്പിക്കാനാവശ്യമായ സോഫ്റ്റ്‌ഫെയര്‍ ഇല്ല. ദയവു ചെയ്ത് ഒരു പ്ലെയര്‍ <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">ഡൗണ്‍ലോഡ് ചെയ്യുക</a>.',
2073 - 'ogg-no-player-js' => 'ക്ഷമിക്കുക, താങ്കളുടെ കമ്പ്യൂട്ടറിൽ ജാവാസ്ക്രിപ്റ്റ് സജ്ജമല്ലായിരിക്കാം അല്ലെങ്കിൽ പിന്തുണയുള്ള ഒരു പ്ലേയർ ഇല്ലായിരിക്കാം.<br />
2074 -താങ്കൾക്ക് <a href="$1">ക്ലിപ് ഡൗൺലോഡ് ചെയ്യാവുന്നതാണ്</a> അല്ലെങ്കിൽ <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">ഒരു പ്ലേയർ ഡൗൺലോഡ് ചെയ്ത്</a> ബ്രൗസറിൽ തന്നെ ക്ലിപ്പ് കാണാവുന്നതാണ്.',
20752013 'ogg-no-xiphqt' => 'ക്വിക്ക്റ്റൈമിനുള്ള XiphQT ഘടകം താങ്കളുടെ പക്കലുണ്ടെന്നു കാണുന്നില്ല.
20762014 ഓഗ് പ്രമാണങ്ങൾ ഈ ഘടകമില്ലാതെ പ്രവർത്തിപ്പിക്കാൻ ക്വിക്ക്റ്റൈമിനു കഴിയില്ല.
20772015 ദയവായി <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">XiphQT ഡൗൺലോഡ് ചെയ്യുക</a> അല്ലെങ്കിൽ മറ്റൊരു പ്ലേയർ തിരഞ്ഞെടുക്കുക.',
@@ -2226,8 +2164,6 @@
22272165 'ogg-play-sound' => 'Geluud ofspeulen',
22282166 'ogg-no-player' => 'Joew system hef gien ondersteunende mediaspeulers.
22292167 Instelleer een <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">mediaspeuler</a>.',
2230 - 'ogg-no-player-js' => 'Joew system hef JavaScript uutstaon of der is gien ondersteunende mediaspeuler.<br />
2231 -Je kunnen <a href="$1">de clip binnenhaolen</a> of <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">een mediaspeuler instelleren</a> um de clip in de webkieker of te speulen.',
22322168 'ogg-no-xiphqt' => '\'t Lik derop da-j de compenent XiphQT veur QuickTime neet hemmen.
22332169 QuickTime kan Ogg-bestanen neet ofspeulen zonder disse compenent.
22342170 Instelleer <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">XiphQT</a> of kies een aandere mediaspeuler.',
@@ -2264,8 +2200,6 @@
22652201 'ogg-play-sound' => 'Geluid afspelen',
22662202 'ogg-no-player' => 'Uw systeem heeft geen van de ondersteunde mediaspelers.
22672203 Installeer <a href="http://www.java.com/nl/download/manual.jsp">Java</a>.',
2268 - 'ogg-no-player-js' => 'Uw systeem heeft JavaScript uitgeschakeld of er is geen ondersteunde mediaspeler.<br />
2269 -U kunt <a href="$1">de clip downloaden</a> of <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">een mediaspeler downloaden</a> om de clip af te spelen in uw browser.',
22702204 'ogg-no-xiphqt' => 'Het lijkt erop dat u de component XiphQT voor QuickTime niet hebt.
22712205 QuickTime kan Ogg-bestanden niet afspelen zonder deze component.
22722206 Download <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">XiphQT</a> of kies een andere speler.',
@@ -2334,8 +2268,6 @@
23352269 'ogg-play-video' => 'Spill av video',
23362270 'ogg-play-sound' => 'Spill av lyd',
23372271 'ogg-no-player' => 'Beklager, systemet ditt har ingen medieavspillere som støtter filformatet. Vennligst <a href="http://mediawiki.org/wiki/Extension:OggHandler/Client_download">last ned en avspiller</a> som støtter formatet.',
2338 - 'ogg-no-player-js' => 'Beklager, ditt system har enten deaktivert JavaScript, eller har ingen støttet spiller.<br />
2339 -Du kan <a href="$1">laste ned filen</a>eller <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">laste ned en spiller</a> for å spille av filen i nettleseren din.',
23402272 'ogg-no-xiphqt' => 'Du har ingen XiphQT-komponent for QuickTime. QuickTime kan ikke spille Ogg-filer uten denne komponenten. <a href="http://mediawiki.org/wiki/Extension:OggHandler/Client_download">last ned XiphQT</a> eller velg en annen medieavspiller.',
23412273 'ogg-player-videoElement' => 'Innebygd nettleserstøtte',
23422274 'ogg-player-oggPlugin' => 'Programtillegg for nettleser',
@@ -2368,8 +2300,6 @@
23692301 'ogg-play-video' => 'Legir la vidèo',
23702302 'ogg-play-sound' => 'Legir lo son',
23712303 'ogg-no-player' => 'O planhèm, aparentament, vòstre sistèma a pas cap de lectors suportats. Installatz <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download/oc">un dels lectors suportats</a>.',
2372 - 'ogg-no-player-js' => 'O planhèm, sus vòstre sistèma, siá JavaScript es desactivat o i a pas de lector suportat.<br />
2373 -Podètz <a href="$1">telecargar lo clip</a> o <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">telecargar un lector</a> per legir lo clip dins vòstre navigator.',
23742304 'ogg-no-xiphqt' => 'Aparentament avètz pas lo compausant XiphQT per Quicktime. Quicktime pòt pas legir los fiquièrs Ogg sens aqueste compausant. <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download/fr"> Telecargatz-lo XiphQT</a> o causissètz un autre lector.',
23752305 'ogg-player-videoElement' => 'Supòrt del navigador natiu',
23762306 'ogg-player-oggPlugin' => 'Plugin del navigador',
@@ -2426,8 +2356,6 @@
24272357 'ogg-play-video' => 'Odtwórz wideo',
24282358 'ogg-play-sound' => 'Odtwórz dźwięk',
24292359 'ogg-no-player' => 'W Twoim systemie brak obsługiwanego programu odtwarzacza. <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download/pl">Pobierz i zainstaluj odtwarzacz</a>.',
2430 - 'ogg-no-player-js' => 'Niestety, ale Twój system ma wyłączoną obsługę JavaScript lub nie posiada kompatybilnego odtwarzacza.<br />
2431 -Możesz <a href="$1">pobrać klip</a> lub <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">ściągnąć odtwarzacz</a> by móc odtworzyć klip w swojej przeglądarce.',
24322360 'ogg-no-xiphqt' => 'Brak komponentu XiphQT dla programu QuickTime. QuickTime nie może odtwarzać plików Ogg bez tego komponentu. <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download/pl">Pobierz XiphQT</a> lub użyj innego odtwarzacza.',
24332361 'ogg-player-videoElement' => 'Obsługa bezpośrednio przez przeglądarkę',
24342362 'ogg-player-oggPlugin' => 'Wtyczka do przeglądarki',
@@ -2461,8 +2389,6 @@
24622390 'ogg-play-video' => 'Smon ël film',
24632391 'ogg-play-sound' => 'Smon ël sonòr',
24642392 'ogg-no-player' => "Darmagi, ma sò calcolator a smija ch'a l'abia pa gnun programa ch'a peul smon-e dj'archivi multi-mojen. Për piasì <a href=\"http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download\">ch'as në dëscaria un</a>.",
2465 - 'ogg-no-player-js' => 'Spiasent, ël tò sistema a l\'ha JavaScript disabilità o a supòrta pa ël riprodotor.<br />
2466 -It peule <a href="$1">dëscarié ël clip</a> o <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">dëscarié un riprodotor</a> për visualisé ël clip ant tò browser.',
24672393 'ogg-no-xiphqt' => "A smija che ansima a sò calcolator a-i sia nen ël component XiphQT dël programa QuickTime. QuickTime a-i la fa pa a dovré dj'archivi an forma Ogg files s'a l'ha nen ës component-lì. Për piasì <a href=\"http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download\">ch'as dëscaria XiphQT</a> ò pura ch'as sërna n'àotr programa për dovré j'archivi multi-mojen.",
24682394 'ogg-player-videoElement' => 'Apògg browser nativ',
24692395 'ogg-player-oggPlugin' => 'Spinòt (plugin) për browser',
@@ -2520,8 +2446,6 @@
25212447 'ogg-play-video' => 'Reproduzir vídeo',
25222448 'ogg-play-sound' => 'Reproduzir som',
25232449 'ogg-no-player' => "Desculpe, mas o seu sistema não aparenta ter qualquer leitor suportado. Por favor, faça o <a href=\"http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download\">''download'' de um leitor</a>.",
2524 - 'ogg-no-player-js' => "Desculpe, mas o seu sistema ou está com o JavaScript desactivado ou não tem qualquer leitor suportado.<br />
2525 -Pode fazer o <a href=\"\$1\">''download'' do vídeo</a> ou o <a href=\"http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download\">''download'' de um leitor</a> para ver o vídeo no seu navegador.",
25262450 'ogg-no-xiphqt' => "Aparentemente não tem o componente XiphQT do QuickTime.
25272451 O QuickTime não pode reproduzir ficheiros Ogg sem este componente.
25282452 Por favor, faça o <a href=\"http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download\">''download'' do XiphQT</a> ou escolha outro leitor.",
@@ -2556,8 +2480,6 @@
25572481 'ogg-play-video' => 'Reproduzir vídeo',
25582482 'ogg-play-sound' => 'Reproduzir som',
25592483 'ogg-no-player' => 'Lamentamos, mas seu sistema aparenta não ter um reprodutor suportado. Por gentileza, <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">faça o download de um reprodutor</a>.',
2560 - 'ogg-no-player-js' => 'Desculpe, seu sistema ou está com JavaScript desabilitado ou não tem nenhum "player" suportado.<br />
2561 -Você pode <a href="$1">descarregar o clipe</a><br />ou<br /><a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">descarregar um "player"</a> para executar o clipe em seu navegador.',
25622484 'ogg-no-xiphqt' => 'Aparentemente você não tem o componente XiphQT para QuickTime. Não será possível reproduzir arquivos Ogg pelo QuickTime sem tal componente. Por gentileza, <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">faça o descarregamento do XiphQT</a> ou escolha outro reprodutor.',
25632485 'ogg-player-videoElement' => 'Suporte interno do navegador',
25642486 'ogg-player-oggPlugin' => 'Plugin do navegador',
@@ -2642,8 +2564,6 @@
26432565 'ogg-play-sound' => 'Riproduce le suène',
26442566 'ogg-no-player' => "Ne dispiace, 'u sisteme tune pare ca non ge tène nisciune softuare p'a riproduzione.<br />
26452567 Pe piacere, <a href=\"http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download\">scareche 'u reproduttore</a>.",
2646 - 'ogg-no-player-js' => "Ne dispiace, 'u sisteme tune tène disabilitate 'u JavaScript oppure non ge tène nisicune reproduttore supportate.<br />
2647 -Tu puè <a href=\"\$1\">scarecà 'u clip</a> o <a href=\"http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download\">scarecà 'nu reproduttore</a> pe reproducere 'u clip jndr'à 'u browser tune.",
26482568 'ogg-no-xiphqt' => "Non ge pare ca tìne 'u combonende XiphQT pu QuickTime.<br />
26492569 QuickTime non ge pò reproducere file Ogg senze stu combonende.<br />
26502570 Pe piacere <a href=\"http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download\">scareche XiphQT</a> o scacchie 'n'otre reproduttore.",
@@ -2680,8 +2600,6 @@
26812601 'ogg-play-video' => 'Воспроизвести видео',
26822602 'ogg-play-sound' => 'Воспроизвести звук',
26832603 'ogg-no-player' => 'Извините, ваша система не имеет необходимого программного обеспечение для воспроизведения файлов. Пожалуйста, <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">скачайте проигрыватель</a>.',
2684 - 'ogg-no-player-js' => 'К сожалению, в вашей системе отключён JavaScript, или данная технология не поддерживается проигрывателем.<br />
2685 -Вы можете <a href="$1">скачать ролик</a> или <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">скачать проигрыватель</a> для воспроизведения ролика в браузере.',
26862604 'ogg-no-xiphqt' => 'Отсутствует компонент XiphQT для QuickTime. QuickTime не может воспроизвести файл Ogg без этого компонента. Пожалуйста, <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">скачайте XiphQT</a> или выберите другой проигрыватель.',
26872605 'ogg-player-videoElement' => 'Встроенная поддержка браузером',
26882606 'ogg-player-oggPlugin' => 'Ogg модуль',
@@ -2714,8 +2632,6 @@
27152633 'ogg-play-video' => 'Көрдөр',
27162634 'ogg-play-sound' => 'Иһитиннэр',
27172635 'ogg-no-player' => 'Хомойуох иһин эн систиэмэҕэр иһитиннэрэр/көрдөрөр анал бырагырааммалар суохтар эбит. Бука диэн, <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">плееры хачайдан</a>.',
2718 - 'ogg-no-player-js' => 'Эн систиэмэҕэр JavaScript үлэлээбэт, эбэтэр плеерыҥ бу технологияны өйөөбөт.<br />
2719 -<a href="$1">Клибы хачайдаан ылыаххын</a> сөп эбэтэр браузергар бу клибы оонньотор туһуттан <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">плееры хачайдаан ылыаххын</a> сөп.',
27202636 'ogg-no-xiphqt' => 'QuickTime маннык тэрээбэтэ: XiphQT суох эбит. Онон QuickTime бу Ogg билэни (файлы) оонньотор кыаҕа суох. Бука диэн, <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download"> XiphQT хачайдан</a> эбэтэр атын плееры тал.',
27212637 'ogg-player-videoElement' => 'Браузер бэйэтин өйөөһүнэ',
27222638 'ogg-player-oggPlugin' => 'Браузер плагина',
@@ -2783,8 +2699,6 @@
27842700 'ogg-play-video' => 'Prehrať video',
27852701 'ogg-play-sound' => 'Prehrať zvuk',
27862702 'ogg-no-player' => 'Prepáčte, zdá sa, že váš systém nemá žiadny podporovaný softvér na prehrávanie. Prosím, <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">stiahnite si prehrávač</a>.',
2787 - 'ogg-no-player-js' => 'Ľutujeme, váš systém má buď vypnutý JavaScript alebo nemá podporovaný prehrávač.<br />
2788 -Môžete si buď <a href="$1">klip stiahnuť</a> alebo <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">stiahnuť prehrávač</a> ak ho chcete prehrať vo svojom prehliadači.',
27892703 'ogg-no-xiphqt' => 'Zdá sa, že nemáte komponent QuickTime XiphQT. QuickTime nedokáže prehrávať ogg súbory bez tohto komponentu. Prosím, <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">stiahnite si XiphQT</a> alebo si vyberte iný prehrávač.',
27902704 'ogg-player-videoElement' => 'Natívna podpora prehliadača',
27912705 'ogg-player-oggPlugin' => 'Zásuvný modul prehliadača',
@@ -2963,8 +2877,6 @@
29642878 'ogg-play-video' => 'Spela upp video',
29652879 'ogg-play-sound' => 'Spela upp ljud',
29662880 'ogg-no-player' => 'Tyvärr verkar det inte finnas någon mediaspelare som stöds installerad i ditt system. Det finns <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">spelare att ladda ner</a>.',
2967 - 'ogg-no-player-js' => 'Tyvärr, ditt system har antingen JavaScript avslaget eller så saknas en mediaspelare som kan spela den här filen.<br />
2968 -Du kan antingen <a href="$1">ladda ner mediefilen</a> eller <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">ladda ner en mediespelare</a> så att du kan se klippet i webbläsaren.',
29692881 'ogg-no-xiphqt' => 'Du verkar inte ha XiphQT-komponenten för QuickTime. Utan den kan inte QuickTime spela upp ogg-filer.Du kan <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">ladda ner XiphQT</a> eller välja någon annan spelare.',
29702882 'ogg-player-videoElement' => '<video>-element',
29712883 'ogg-player-oggPlugin' => 'Ogg-plugin',
@@ -3083,8 +2995,6 @@
30842996 'ogg-play-sound' => 'เล่นเสียง',
30852997 'ogg-no-player' => 'ขออภัย ระบบของคุณไม่มีซอฟต์แวร์ที่สนับสนุนไฟล์สื่อนี้
30862998 กรุณา<a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">ดาวน์โหลดซอฟต์แวร์เล่นสื่อ</a>',
3087 - 'ogg-no-player-js' => 'ขออภัย ระบบของคุณได้ปิด JavaScript หรือไม่มีซอฟต์แวร์ที่สนับสนุนไฟล์สื่อนี้
3088 -คุณสามารถ<a href="$1">ดาวน์โหลดสื่อนี้</a> หรือ<a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">ดาน์โหลดโปรแกรมเล่นสื่อ</a>เพื่อเล่นสื่อนี้ในเบราเซอร์ของคุณ',
30892999 'ogg-no-xiphqt' => 'ไม่พบซอฟต์แวร์เสริม XiphQT ของโปรแกรม QuickTime บนระบบของคุณ
30903000 โปรแกรม QuickTime ไม่สามารถเล่นไฟล์สกุล Ogg ได้ถ้าไม่มีโปรแกรมเสริมนี้
30913001 กรุณา<a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">ดวาน์โหลด XiphQT</a> หรือเลือกโปรแกรมอื่น',
@@ -3110,8 +3020,6 @@
31113021 'ogg-play-sound' => 'Ses oýnat',
31123022 'ogg-no-player' => 'Gynansak-da, ulgamyňyzda goldanylýan haýsydyr bir pleýer programmaňyz ýok ýaly-la.
31133023 <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download"> Pleýer düşüriň</a>.',
3114 - 'ogg-no-player-js' => 'Gynansak-da, ulgamyňyzda JavaScript ýapyk ýa-da goldanylýan pleýeriňiz ýok.<br />
3115 -<a href="$1">Klibi düşürip</a> ýa-da klibi brauzeriňizde oýnatmak üçin <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download"> pleýer düşürip bilersiňiz</a>.',
31163024 'ogg-no-xiphqt' => 'QuickTime üçin XiphQT komponentiňiz ýok bolarly.
31173025 QuickTime bu komponent bolmasa Ogg faýllaryny oýnadyp bilmeýär.
31183026 <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">XiphQT-i düşüriň</a> ýa-da başga bir pleýer saýlaň.',
@@ -3195,8 +3103,6 @@
31963104 'ogg-play-sound' => 'Sesi oynat',
31973105 'ogg-no-player' => 'Üzgünüz, sisteminiz desteklenen herhangi bir oynatıcı yazılımına sahip gibi görünmüyor.
31983106 Lütfen <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">bir oynatıcı indirin</a>.',
3199 - 'ogg-no-player-js' => 'Üzgünüz, sisteminizde JavaScript devre dışı ya da desteklenen bir oynatıcınız yok.<br />
3200 -<a href="$1">Klibi indirebilir</a> ya da klibi tarayıcınızda oynatmak için <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">bir oynatıcı indirebilirsiniz</a>.',
32013107 'ogg-no-xiphqt' => 'QuickTime için XiphQT bileşenine sahip değil görünüyorsunuz.
32023108 QuickTime bu bileşen olmadan Ogg dosyalarını oynatamaz.
32033109 Lütfen <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">XiphQT\'i indirin</a> ya da başka bir oynatıcı seçin.',
@@ -3242,7 +3148,6 @@
32433149 'ogg-play-video' => 'Відтворити відео',
32443150 'ogg-play-sound' => 'Відтворити звук',
32453151 'ogg-no-player' => 'Вибачте, ваша ситема не має необхідного програмного забезпечення для відтворення файлів. Будь ласка, <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">завантажте програвач</a>.',
3246 - 'ogg-no-player-js' => 'На жаль, у вашій системі або відключений JavaScript, або немає жодного з сумісних програвачів.<br />Ви можете <a href="$1">завантажити кліп</a> або <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">завантажити програвач</a> для відтворення кліпу у Вашому браузері.',
32473152 'ogg-no-xiphqt' => 'Відсутній компонент XiphQT для QuickTime.
32483153 QuickTime не може відтворювати ogg-файли без цього компонента.
32493154 Будь ласка, <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">завантажте XiphQT</a> або оберіть інший програвач.',
@@ -3277,8 +3182,6 @@
32783183 'ogg-play-video' => 'Varda el video',
32793184 'ogg-play-sound' => 'Scolta el file',
32803185 'ogg-no-player' => 'Semo spiacenti, ma sul to sistema no risulta instalà nissun software de riproduzion conpatibile. Par piaser <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">scàrichete un letor</a> che vaga ben.',
3281 - 'ogg-no-player-js' => 'El to computer o el ga JavaScript disabilità o no\'l gà nissun riprodutor suportà.<br />
3282 -Te pol <a href="$1">descargar el video</a> o <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">descargar un riprodutor</a> par vardartelo sul to browser.',
32833186 'ogg-no-xiphqt' => 'No risulta mìa instalà el conponente XiphQT de QuickTime. Senza sto conponente no se pode mìa riprodur i file Ogg con QuickTime. Par piaser, <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">scàrichete XiphQT</a> o siegli n\'altro letor.',
32843187 'ogg-player-videoElement' => 'Suporto browser zà de suo (nativo)',
32853188 'ogg-player-oggPlugin' => 'Plugin browser',
@@ -3331,8 +3234,6 @@
33323235 'ogg-play-video' => 'Coi video',
33333236 'ogg-play-sound' => 'Nghe âm thanh',
33343237 'ogg-no-player' => 'Rất tiếc, hình như máy tính của bạn cần thêm phần mềm. Xin <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download/vi">tải xuống chương trình chơi nhạc</a>.',
3335 - 'ogg-no-player-js' => 'Rất tiếc, hệ thống của bạn đã tắt JavaScript hoặc không có trình chơi được hỗ trợ.<br />
3336 -Bạn có thể <a href="$1">tải đoạn clip</a> hoặc <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download?uselang=vi">tải trình chơi</a> để chơi đoạn clip ngay trong trình duyệt.',
33373238 'ogg-no-xiphqt' => 'Hình như bạn không có bộ phận XiphQT cho QuickTime, nên QuickTime không thể chơi những tập tin Ogg được. Xin <a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download/vi">truyền xuống XiphQT</a> hay chọn một chương trình chơi nhạc khác.',
33383239 'ogg-player-videoElement' => 'Bộ chơi có sẵn trong trình duyệt',
33393240 'ogg-player-oggPlugin' => 'Phần bổ trợ trình duyệt',
@@ -3412,8 +3313,6 @@
34133314 'ogg-play-video' => '播放视频',
34143315 'ogg-play-sound' => '播放声音',
34153316 'ogg-no-player' => '抱歉,您的系统并无任何可以支持播放的播放器。请安装<a href="http://www.java.com/zh_CN/download/manual.jsp">Java</a>。',
3416 - 'ogg-no-player-js' => '抱歉,您的系统未启用JavaScript或者没有安装任何受支持的播放器。<br />
3417 -您可以<a href="$1">下载该片段</a>或者<a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">下载一个播放器</a> ,以便在您的浏览器中播放该片段。',
34183317 'ogg-no-xiphqt' => '您似乎没有给QuickTime用的XiphQT组件。在未有这个组件的情况下,QuickTime是不能播放Ogg文件的。请<a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">下载XiphQT</a>或者选取另一个播放器。',
34193318 'ogg-player-videoElement' => '<video>元素',
34203319 'ogg-player-oggPlugin' => 'Ogg插件',
@@ -3447,8 +3346,6 @@
34483347 'ogg-play-video' => '播放影片',
34493348 'ogg-play-sound' => '播放聲音',
34503349 'ogg-no-player' => '抱歉,您的系統並無任何可以支援播放的播放器。請安裝<a href="http://www.java.com/zh_TW/download/manual.jsp">Java</a>。',
3451 - 'ogg-no-player-js' => '抱歉,您的系統未啟用JavaScript或者沒有安裝任何受支持的播放器。 <br />
3452 -您可以<a href="$1">下載該片段</a>或者<a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">下載一個播放器</a> ,以便在您的瀏覽器中播放該片段。',
34533350 'ogg-no-xiphqt' => '您似乎沒有給QuickTime用的XiphQT組件。在未有這個組件的情況下,QuickTime是不能播放Ogg檔案的。請<a href="http://www.mediawiki.org/wiki/Extension:OggHandler/Client_download">下載XiphQT</a>或者選取另一個播放器。',
34543351 'ogg-player-videoElement' => '<video>元素',
34553352 'ogg-player-oggPlugin' => 'Ogg插件',

Follow-up revisions

RevisionCommit summaryAuthorDate
r98208Fix for r87923, which made broken but harmless code from r62223 actually star...tstarling04:19, 27 September 2011

Past revisions this follows-up on

RevisionCommit summaryAuthorDate
r38714Add support for mplayerplug-in, yet another browser plugin with a fake QuickT...tstarling14:17, 6 August 2008

Comments

#Comment by Mdale (talk | contribs)   09:21, 12 February 2010
  • OggThumb. I understand from discussion on wikitech-l your "not happy" with oggThumb as a DOS vector? ( its been deployed for some time has it resulted in issues? Don't we scan the full file with the php lib ? Should I see if the developer can add bisect search? or is your preference to use ffmpeg?
  • Removing #re-attempt encode command with different stream mapping ( and removing oggThumb ) will increase the number of ogg assets that can't get a thumbnail. ( already deployed ) would be pretty trivial to parametrize the call to avoid code duplication.
  • Removing the $this->offset attribute output, makes its difficult to render accurate playhead for some plugin-types. Although I understand at some point getting the stream offset must have been lost from File_Ogg causing bug 22388 ? ( presently ogg embeds are giving their offset times )


And of course thoughts on what is ~obviously wrong~ with the other commits would be helpful. I did address the variable documentation and white space which unfortunately the only thing mentioned in code review.



#Comment by Tim Starling (talk | contribs)   06:16, 19 February 2010

OggThumb can probably be used, but the code that calls it has to go into the review queue like everything else.

#Comment by Bawolff (talk | contribs)   06:54, 5 February 2011

I know this revision is from a while ago, but:

        function validateParam( $name, $value ) {
                if ( isset( $params['thumbtime'] ) ) {
                        $length = $this->getLength( $image );
                        $time = $this->parseTimeString( $params['thumbtime'] );
                        if ( $time === false ) {
                                return false;
                        } elseif ( $time > $length - 1 ) {
                                $params['thumbtime'] = $length - 1;
                        } elseif ( $time <= 0 ) {
                                $params['thumbtime'] = 0;
                        }
                }
                return true;
        }

Doesn't really make sense, since isset( $params['thumbtime'] ) can never be true, as there is no $params in scope in that function.

Status & tagging log