diff options
116 files changed, 171 insertions, 193 deletions
diff --git a/addons/repository.pvr-android.xbmc.org/icon.png b/addons/repository.pvr-android.xbmc.org/icon.png Binary files differindex a7ad3ebb84..01149a50a8 100644 --- a/addons/repository.pvr-android.xbmc.org/icon.png +++ b/addons/repository.pvr-android.xbmc.org/icon.png diff --git a/addons/repository.pvr-ios.xbmc.org/icon.png b/addons/repository.pvr-ios.xbmc.org/icon.png Binary files differindex a7ad3ebb84..01149a50a8 100644 --- a/addons/repository.pvr-ios.xbmc.org/icon.png +++ b/addons/repository.pvr-ios.xbmc.org/icon.png diff --git a/addons/repository.pvr-osx32.xbmc.org/icon.png b/addons/repository.pvr-osx32.xbmc.org/icon.png Binary files differindex a7ad3ebb84..01149a50a8 100644 --- a/addons/repository.pvr-osx32.xbmc.org/icon.png +++ b/addons/repository.pvr-osx32.xbmc.org/icon.png diff --git a/addons/repository.pvr-osx64.xbmc.org/icon.png b/addons/repository.pvr-osx64.xbmc.org/icon.png Binary files differindex a7ad3ebb84..01149a50a8 100644 --- a/addons/repository.pvr-osx64.xbmc.org/icon.png +++ b/addons/repository.pvr-osx64.xbmc.org/icon.png diff --git a/addons/repository.pvr-win32.xbmc.org/icon.png b/addons/repository.pvr-win32.xbmc.org/icon.png Binary files differindex a7ad3ebb84..01149a50a8 100644 --- a/addons/repository.pvr-win32.xbmc.org/icon.png +++ b/addons/repository.pvr-win32.xbmc.org/icon.png diff --git a/addons/repository.xbmc.org/icon.png b/addons/repository.xbmc.org/icon.png Binary files differindex a7ad3ebb84..58a2772c26 100644 --- a/addons/repository.xbmc.org/icon.png +++ b/addons/repository.xbmc.org/icon.png diff --git a/addons/service.xbmc.versioncheck/icon.png b/addons/service.xbmc.versioncheck/icon.png Binary files differindex 8eb53e5994..02476a62b6 100644 --- a/addons/service.xbmc.versioncheck/icon.png +++ b/addons/service.xbmc.versioncheck/icon.png diff --git a/addons/skin.confluence/720p/Home.xml b/addons/skin.confluence/720p/Home.xml index 93faff9319..3646412526 100644 --- a/addons/skin.confluence/720p/Home.xml +++ b/addons/skin.confluence/720p/Home.xml @@ -18,9 +18,9 @@ <control type="image"> <description>LOGO</description> <left>10</left> - <top>10</top> - <width>100</width> - <height>50</height> + <top>5</top> + <width>120</width> + <height>49</height> <aspectratio aligny="top" align="left">keep</aspectratio> <texture>kodi-logo.png</texture> <include>VisibleFadeEffect</include> diff --git a/addons/skin.confluence/media/kodi-logo.png b/addons/skin.confluence/media/kodi-logo.png Binary files differindex cd9906d02b..011bf1c6d8 100644 --- a/addons/skin.confluence/media/kodi-logo.png +++ b/addons/skin.confluence/media/kodi-logo.png diff --git a/addons/visualization.vortex/resources/Presets/XBMCRain.vtx b/addons/visualization.vortex/resources/Presets/XBMCRain.vtx deleted file mode 100644 index 224b4e1891..0000000000 --- a/addons/visualization.vortex/resources/Presets/XBMCRain.vtx +++ /dev/null @@ -1,95 +0,0 @@ -// Author - MrC -// Based on R4Rain.r4 by Gordon Williams - -int x,y, t; -float c,tm,tn,td, s; -float[] c_x(64),c_y(64),c_z(64),c_vz(64),c_rx(64),c_ry(64),c_sx(64),c_sy(64),c_sz(64); -float d; - -Texture texture; -Texture sky; - -void MakeNew(int n) -{ - c_x[n]=c_y[n]=0; - while (Mag(c_x[n],c_y[n])<1) - { - c_x[n] = (Rand()*6.0)-3.0; - c_y[n] = (Rand()*6.0)-3.0; - } - - c_z[n] = 10; - c_vz[n] = (1.0+Rand())*4; - c_rx[n] = (1.0+Rand())*80; - c_ry[n] = (1.0+Rand())*80; - c_sx[n] = (0.5+Rand())*0.5; - c_sy[n] = (0.5+Rand())*0.5; - c_sz[n] = (1.0+Rand())*0.05; -} - - -void Init() -{ - texture.LoadTexture("splash_original.dds"); - sky.LoadTexture("skybox.dds"); - - for (x=0;x<64;x=x+1) - { - MakeNew(x); - c_z[x] = Rand()*10; - } - tm = tn = 0; -} - -void mything(float x,float y,float z) -{ - gfxBegin(PRIM_QUADLIST); - for (t=0; t<1; t++) - { - s = z*((t/2.0f)-1.0); - gfxTexCoord(0,0); - gfxVertex(-x,y,s); - gfxTexCoord(1,0); - gfxVertex(x,y,s); - gfxTexCoord(1,1); - gfxVertex(x,-y,s); - gfxTexCoord(0,1); - gfxVertex(-x,-y,s); - - } - gfxEnd(); -} - -void Render() -{ - td = ((TREBLE+1.5f)*TIMEPASS); - tm = tm + td; - tn = tn + ((BASS+1.0)*TIMEPASS*2); - - gfxTranslate(Cos(tn * 1.23f) * 0.5f, Sin(tn) * 0.5f, 0.0f); - gfxRotate(Cos(tn*0.6734f)*20.0f, 1.0f, 0.0f, 0.0f); - gfxRotate(Sin(tn*0.2143f)*20.0f, 0.0f, 1.0f, 0.0f); - - gfxSetTexture(sky); - gfxCube(-100,-100,-100,100,100,100); - - gfxSetTexture(texture); - - gfxSetBlendMode(BLEND_ADD); - - for (x=0;x<64;x++) - { - c_z[x] = c_z[x] - (td*c_vz[x]); - if (c_z[x]<0) MakeNew(x); - - c = (10.0-c_z[x])*0.11; - gfxColour(c,c,c,1); - gfxPushMatrix(); - gfxTranslate(c_x[x],c_y[x],c_z[x]); - gfxRotate(c_rx[x]*tm,1.0f,0.0f,0.0f); - gfxRotate(c_ry[x]*tm,0.0f,1.0f,0.0f); - mything(c_sx[x],c_sy[x],c_sz[x]); - gfxPopMatrix(); - } - -}
\ No newline at end of file diff --git a/addons/visualization.vortex/resources/Textures/splash_original.dds b/addons/visualization.vortex/resources/Textures/splash_original.dds Binary files differdeleted file mode 100644 index bed53fafb9..0000000000 --- a/addons/visualization.vortex/resources/Textures/splash_original.dds +++ /dev/null diff --git a/addons/visualization.vortex/resources/Textures/xbmc_icon.png b/addons/visualization.vortex/resources/Textures/xbmc_icon.png Binary files differdeleted file mode 100644 index f011789ad4..0000000000 --- a/addons/visualization.vortex/resources/Textures/xbmc_icon.png +++ /dev/null diff --git a/media/Splash.png b/media/Splash.png Binary files differindex ac8ad4aab4..2b01a863a0 100644 --- a/media/Splash.png +++ b/media/Splash.png diff --git a/media/icon120x120.png b/media/icon120x120.png Binary files differindex 41781ad38b..5fa623f818 100644 --- a/media/icon120x120.png +++ b/media/icon120x120.png diff --git a/media/icon16x16.png b/media/icon16x16.png Binary files differindex bf1753bc24..e8d52fbac9 100644 --- a/media/icon16x16.png +++ b/media/icon16x16.png diff --git a/media/icon256x256.png b/media/icon256x256.png Binary files differindex 85fbeab20b..4df7886f55 100644 --- a/media/icon256x256.png +++ b/media/icon256x256.png diff --git a/media/icon32x32.png b/media/icon32x32.png Binary files differindex c12a228225..fceb835ce1 100644 --- a/media/icon32x32.png +++ b/media/icon32x32.png diff --git a/media/icon48x48.png b/media/icon48x48.png Binary files differindex e0a5a8850f..31d073c591 100644 --- a/media/icon48x48.png +++ b/media/icon48x48.png diff --git a/project/Win32BuildSetup/genNsisInstaller.nsi b/project/Win32BuildSetup/genNsisInstaller.nsi index b9659cd79e..1577d11ec2 100644 --- a/project/Win32BuildSetup/genNsisInstaller.nsi +++ b/project/Win32BuildSetup/genNsisInstaller.nsi @@ -41,9 +41,9 @@ ;Interface Settings !define MUI_HEADERIMAGE - !define MUI_ICON "..\..\tools\windows\packaging\media\xbmc.ico" - ;!define MUI_HEADERIMAGE_BITMAP "..\..\tools\windows\packaging\media\installer\header.bmp" - ;!define MUI_WELCOMEFINISHPAGE_BITMAP "..\..\tools\windows\packaging\media\installer\welcome-left.bmp" + !define MUI_ICON "..\..\tools\windows\packaging\media\application.ico" + !define MUI_HEADERIMAGE_BITMAP "..\..\tools\windows\packaging\media\installer\header.bmp" + !define MUI_WELCOMEFINISHPAGE_BITMAP "..\..\tools\windows\packaging\media\installer\welcome-left.bmp" !define MUI_COMPONENTSPAGE_SMALLDESC !define MUI_FINISHPAGE_LINK "Please visit ${WEBSITE} for more information." !define MUI_FINISHPAGE_LINK_LOCATION "${WEBSITE}" diff --git a/tools/android/packaging/Makefile.in b/tools/android/packaging/Makefile.in index 121b515a05..cffb9edb28 100644 --- a/tools/android/packaging/Makefile.in +++ b/tools/android/packaging/Makefile.in @@ -105,6 +105,8 @@ res: cp -fp media/drawable-mdpi/ic_launcher.png xbmc/res/drawable-mdpi/ic_launcher.png cp -fp media/drawable-xhdpi/ic_launcher.png xbmc/res/drawable-xhdpi/ic_launcher.png cp -fp media/drawable-xxhdpi/ic_launcher.png xbmc/res/drawable-xxhdpi/ic_launcher.png + cp -fp media/drawable-xhdpi/banner.png xbmc/res/drawable-xhdpi/banner.png + cp -fp media/drawable-xhdpi/ouya_icon.png xbmc/res/drawable-xhdpi/ouya_icon.png cp xbmc/strings.xml xbmc/res/values/ mkdir -p tmp/res; $(AAPT) c -S xbmc/res -C tmp/res; cp -r -n xbmc/res tmp/ || true $(AAPT) p -f -I $(SDKROOT)/platforms/$(SDK_PLATFORM)/android.jar -S tmp/res/ -M xbmc/AndroidManifest.xml -F images/@APP_NAME_LC@app-debug-skeleton.apk -J xbmc/src diff --git a/tools/android/packaging/media/drawable-hdpi/ic_launcher.png b/tools/android/packaging/media/drawable-hdpi/ic_launcher.png Binary files differindex 62f2673cdb..5577fcb74f 100644 --- a/tools/android/packaging/media/drawable-hdpi/ic_launcher.png +++ b/tools/android/packaging/media/drawable-hdpi/ic_launcher.png diff --git a/tools/android/packaging/media/drawable-ldpi/ic_launcher.png b/tools/android/packaging/media/drawable-ldpi/ic_launcher.png Binary files differindex 9fc808858b..55f85e0476 100644 --- a/tools/android/packaging/media/drawable-ldpi/ic_launcher.png +++ b/tools/android/packaging/media/drawable-ldpi/ic_launcher.png diff --git a/tools/android/packaging/media/drawable-mdpi/ic_launcher.png b/tools/android/packaging/media/drawable-mdpi/ic_launcher.png Binary files differindex 9fc1d9bd21..670e2aa8cb 100644 --- a/tools/android/packaging/media/drawable-mdpi/ic_launcher.png +++ b/tools/android/packaging/media/drawable-mdpi/ic_launcher.png diff --git a/tools/android/packaging/media/drawable-xhdpi/banner.png b/tools/android/packaging/media/drawable-xhdpi/banner.png Binary files differnew file mode 100644 index 0000000000..7bf98b2945 --- /dev/null +++ b/tools/android/packaging/media/drawable-xhdpi/banner.png diff --git a/tools/android/packaging/media/drawable-xhdpi/ic_launcher.png b/tools/android/packaging/media/drawable-xhdpi/ic_launcher.png Binary files differindex a6631ce55b..9ec4a9a1bd 100644 --- a/tools/android/packaging/media/drawable-xhdpi/ic_launcher.png +++ b/tools/android/packaging/media/drawable-xhdpi/ic_launcher.png diff --git a/tools/android/packaging/media/drawable-xhdpi/ouya_icon.png b/tools/android/packaging/media/drawable-xhdpi/ouya_icon.png Binary files differnew file mode 100644 index 0000000000..48caf085f3 --- /dev/null +++ b/tools/android/packaging/media/drawable-xhdpi/ouya_icon.png diff --git a/tools/android/packaging/media/drawable-xxhdpi/ic_launcher.png b/tools/android/packaging/media/drawable-xxhdpi/ic_launcher.png Binary files differindex 30035fff77..f0fcb169a6 100644 --- a/tools/android/packaging/media/drawable-xxhdpi/ic_launcher.png +++ b/tools/android/packaging/media/drawable-xxhdpi/ic_launcher.png diff --git a/tools/android/packaging/media/drawable-xxxhdpi/ic_launcher.png b/tools/android/packaging/media/drawable-xxxhdpi/ic_launcher.png Binary files differindex 09d9993005..429420c2a7 100644 --- a/tools/android/packaging/media/drawable-xxxhdpi/ic_launcher.png +++ b/tools/android/packaging/media/drawable-xxxhdpi/ic_launcher.png diff --git a/tools/android/packaging/media/playstore.png b/tools/android/packaging/media/playstore.png Binary files differindex 8ffb8b8527..c51b2a7fe3 100644 --- a/tools/android/packaging/media/playstore.png +++ b/tools/android/packaging/media/playstore.png diff --git a/tools/android/packaging/xbmc/AndroidManifest.xml.in b/tools/android/packaging/xbmc/AndroidManifest.xml.in index e185665507..ba7ade529c 100644 --- a/tools/android/packaging/xbmc/AndroidManifest.xml.in +++ b/tools/android/packaging/xbmc/AndroidManifest.xml.in @@ -20,7 +20,10 @@ <uses-feature android:name="android.hardware.usb.host" android:required="false" /> <uses-feature android:name="android.hardware.wifi" android:required="false" /> - <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:hasCode="true"> + <application android:icon="@drawable/ic_launcher" + android:logo="@drawable/banner" + android:label="@string/app_name" + android:hasCode="true"> <activity android:name=".Splash" android:configChanges="orientation|keyboard|keyboardHidden|navigation|touchscreen" @@ -32,6 +35,7 @@ <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> <category android:name="android.intent.category.LEANBACK_LAUNCHER" /> + <category android:name="tv.ouya.intent.category.APP"/> </intent-filter> <intent-filter> <action android:name="android.intent.action.VIEW" /> diff --git a/tools/android/packaging/xbmc/res/drawable/progresscolor.xml b/tools/android/packaging/xbmc/res/drawable/progresscolor.xml index 0293d4818c..4bca6f2cd7 100644 --- a/tools/android/packaging/xbmc/res/drawable/progresscolor.xml +++ b/tools/android/packaging/xbmc/res/drawable/progresscolor.xml @@ -7,8 +7,8 @@ <gradient android:angle="270" - android:endColor="#0e0e0e" - android:startColor="#7d7e7d" + android:endColor="#0E5A91" + android:startColor="#31afe1" /> </shape> </item> @@ -19,8 +19,8 @@ <gradient android:angle="270" - android:endColor="#7d7e7d" - android:startColor="#ffffff" /> + android:endColor="#31afe1" + android:startColor="#E5F7FF" /> </shape> </clip> </item> diff --git a/tools/android/packaging/xbmc/res/layout/activity_splash.xml b/tools/android/packaging/xbmc/res/layout/activity_splash.xml index f5d3a7a5ab..04d417e2dd 100644 --- a/tools/android/packaging/xbmc/res/layout/activity_splash.xml +++ b/tools/android/packaging/xbmc/res/layout/activity_splash.xml @@ -1,22 +1,22 @@ -<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" +<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@android:color/black" > + <ImageView + android:id="@+id/imageView1" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:layout_centerHorizontal="true" + android:adjustViewBounds="true" + android:layout_alignParentTop="true" + android:scaleType="center" + android:src="@drawable/splash" /> + <RelativeLayout android:layout_width="wrap_content" android:layout_height="wrap_content" - android:layout_centerHorizontal="true" - android:layout_centerVertical="true" > - - <ImageView - android:id="@+id/imageView1" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_centerHorizontal="true" - android:adjustViewBounds="true" - android:scaleType="fitXY" - android:src="@drawable/splash" /> + android:layout_gravity="center_horizontal|bottom" > <ProgressBar android:id="@+id/progressBar1" @@ -25,11 +25,11 @@ android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentRight="true" - android:layout_below="@+id/imageView1" + android:layout_alignParentBottom="true" android:layout_centerHorizontal="true" - android:layout_marginLeft="10dp" - android:layout_marginRight="10dp" - android:layout_marginTop="20dp" + android:layout_marginLeft="20dp" + android:layout_marginRight="20dp" + android:layout_marginTop="10dp" android:progress="50" android:progressDrawable="@drawable/progresscolor" /> @@ -37,11 +37,11 @@ android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:layout_below="@+id/imageView1" + android:layout_above="@+id/progressBar1" android:layout_centerHorizontal="true" android:text="" android:textColor="@android:color/white" android:textSize="16dp" /> </RelativeLayout> -</RelativeLayout> +</FrameLayout> diff --git a/tools/darwin/packaging/media/atv2/AppIcon.png b/tools/darwin/packaging/media/atv2/AppIcon.png Binary files differindex 5542b74c3b..7826660029 100644 --- a/tools/darwin/packaging/media/atv2/AppIcon.png +++ b/tools/darwin/packaging/media/atv2/AppIcon.png diff --git a/tools/darwin/packaging/media/atv2/TopShelf.png b/tools/darwin/packaging/media/atv2/TopShelf.png Binary files differindex fb7f58fac6..85a90c0f04 100644 --- a/tools/darwin/packaging/media/atv2/TopShelf.png +++ b/tools/darwin/packaging/media/atv2/TopShelf.png diff --git a/tools/darwin/packaging/media/ios/iTunesArtwork.png b/tools/darwin/packaging/media/ios/iTunesArtwork.png Binary files differindex 8ffb8b8527..f0bdfac2d5 100644 --- a/tools/darwin/packaging/media/ios/iTunesArtwork.png +++ b/tools/darwin/packaging/media/ios/iTunesArtwork.png diff --git a/tools/darwin/packaging/media/ios/iTunesArtwork@2x.png b/tools/darwin/packaging/media/ios/iTunesArtwork@2x.png Binary files differindex 0501cac248..41843766db 100644 --- a/tools/darwin/packaging/media/ios/iTunesArtwork@2x.png +++ b/tools/darwin/packaging/media/ios/iTunesArtwork@2x.png diff --git a/tools/darwin/packaging/media/ios/rounded/AppIcon29x29.png b/tools/darwin/packaging/media/ios/rounded/AppIcon29x29.png Binary files differindex 5bfca1b321..4fec2dc64c 100644 --- a/tools/darwin/packaging/media/ios/rounded/AppIcon29x29.png +++ b/tools/darwin/packaging/media/ios/rounded/AppIcon29x29.png diff --git a/tools/darwin/packaging/media/ios/rounded/AppIcon29x29@2x.png b/tools/darwin/packaging/media/ios/rounded/AppIcon29x29@2x.png Binary files differindex af149b61c2..ee7a61db4c 100644 --- a/tools/darwin/packaging/media/ios/rounded/AppIcon29x29@2x.png +++ b/tools/darwin/packaging/media/ios/rounded/AppIcon29x29@2x.png diff --git a/tools/darwin/packaging/media/ios/rounded/AppIcon29x29l@3x.png b/tools/darwin/packaging/media/ios/rounded/AppIcon29x29l@3x.png Binary files differnew file mode 100644 index 0000000000..395e4b1555 --- /dev/null +++ b/tools/darwin/packaging/media/ios/rounded/AppIcon29x29l@3x.png diff --git a/tools/darwin/packaging/media/ios/rounded/AppIcon40x40.png b/tools/darwin/packaging/media/ios/rounded/AppIcon40x40.png Binary files differindex 89d3ea7b75..9dffd095ad 100644 --- a/tools/darwin/packaging/media/ios/rounded/AppIcon40x40.png +++ b/tools/darwin/packaging/media/ios/rounded/AppIcon40x40.png diff --git a/tools/darwin/packaging/media/ios/rounded/AppIcon40x40@2x.png b/tools/darwin/packaging/media/ios/rounded/AppIcon40x40@2x.png Binary files differindex 09d18c955f..5b00082cd6 100644 --- a/tools/darwin/packaging/media/ios/rounded/AppIcon40x40@2x.png +++ b/tools/darwin/packaging/media/ios/rounded/AppIcon40x40@2x.png diff --git a/tools/darwin/packaging/media/ios/rounded/AppIcon40x40@3x.png b/tools/darwin/packaging/media/ios/rounded/AppIcon40x40@3x.png Binary files differnew file mode 100644 index 0000000000..dfe55067a9 --- /dev/null +++ b/tools/darwin/packaging/media/ios/rounded/AppIcon40x40@3x.png diff --git a/tools/darwin/packaging/media/ios/rounded/AppIcon50x50.png b/tools/darwin/packaging/media/ios/rounded/AppIcon50x50.png Binary files differindex 2e60ad04b1..5083a1442d 100644 --- a/tools/darwin/packaging/media/ios/rounded/AppIcon50x50.png +++ b/tools/darwin/packaging/media/ios/rounded/AppIcon50x50.png diff --git a/tools/darwin/packaging/media/ios/rounded/AppIcon50x50@2x.png b/tools/darwin/packaging/media/ios/rounded/AppIcon50x50@2x.png Binary files differindex 59bef0a90c..276a993747 100644 --- a/tools/darwin/packaging/media/ios/rounded/AppIcon50x50@2x.png +++ b/tools/darwin/packaging/media/ios/rounded/AppIcon50x50@2x.png diff --git a/tools/darwin/packaging/media/ios/rounded/AppIcon57x57.png b/tools/darwin/packaging/media/ios/rounded/AppIcon57x57.png Binary files differindex fafbb41deb..a751f39264 100644 --- a/tools/darwin/packaging/media/ios/rounded/AppIcon57x57.png +++ b/tools/darwin/packaging/media/ios/rounded/AppIcon57x57.png diff --git a/tools/darwin/packaging/media/ios/rounded/AppIcon57x57@2x.png b/tools/darwin/packaging/media/ios/rounded/AppIcon57x57@2x.png Binary files differindex d748b7e7a5..8b5d1b7829 100644 --- a/tools/darwin/packaging/media/ios/rounded/AppIcon57x57@2x.png +++ b/tools/darwin/packaging/media/ios/rounded/AppIcon57x57@2x.png diff --git a/tools/darwin/packaging/media/ios/rounded/AppIcon60x60.png b/tools/darwin/packaging/media/ios/rounded/AppIcon60x60.png Binary files differindex ecd4662209..cf82ba74f0 100644 --- a/tools/darwin/packaging/media/ios/rounded/AppIcon60x60.png +++ b/tools/darwin/packaging/media/ios/rounded/AppIcon60x60.png diff --git a/tools/darwin/packaging/media/ios/rounded/AppIcon60x60@2x.png b/tools/darwin/packaging/media/ios/rounded/AppIcon60x60@2x.png Binary files differindex 81beebfc12..106b37b361 100644 --- a/tools/darwin/packaging/media/ios/rounded/AppIcon60x60@2x.png +++ b/tools/darwin/packaging/media/ios/rounded/AppIcon60x60@2x.png diff --git a/tools/darwin/packaging/media/ios/rounded/AppIcon60x60@3x.png b/tools/darwin/packaging/media/ios/rounded/AppIcon60x60@3x.png Binary files differnew file mode 100644 index 0000000000..5aa9be78cb --- /dev/null +++ b/tools/darwin/packaging/media/ios/rounded/AppIcon60x60@3x.png diff --git a/tools/darwin/packaging/media/ios/rounded/AppIcon72x72.png b/tools/darwin/packaging/media/ios/rounded/AppIcon72x72.png Binary files differindex 3bcec43296..8e2ff8369c 100644 --- a/tools/darwin/packaging/media/ios/rounded/AppIcon72x72.png +++ b/tools/darwin/packaging/media/ios/rounded/AppIcon72x72.png diff --git a/tools/darwin/packaging/media/ios/rounded/AppIcon72x72@2x.png b/tools/darwin/packaging/media/ios/rounded/AppIcon72x72@2x.png Binary files differindex 654edcb25a..253dc9145c 100644 --- a/tools/darwin/packaging/media/ios/rounded/AppIcon72x72@2x.png +++ b/tools/darwin/packaging/media/ios/rounded/AppIcon72x72@2x.png diff --git a/tools/darwin/packaging/media/ios/rounded/AppIcon76x76.png b/tools/darwin/packaging/media/ios/rounded/AppIcon76x76.png Binary files differindex e14a5f31f5..ecf65387ed 100644 --- a/tools/darwin/packaging/media/ios/rounded/AppIcon76x76.png +++ b/tools/darwin/packaging/media/ios/rounded/AppIcon76x76.png diff --git a/tools/darwin/packaging/media/ios/rounded/AppIcon76x76@2x.png b/tools/darwin/packaging/media/ios/rounded/AppIcon76x76@2x.png Binary files differindex 74507a0fac..4ab16a4b24 100644 --- a/tools/darwin/packaging/media/ios/rounded/AppIcon76x76@2x.png +++ b/tools/darwin/packaging/media/ios/rounded/AppIcon76x76@2x.png diff --git a/tools/darwin/packaging/media/ios/squared/AppIcon29x29.png b/tools/darwin/packaging/media/ios/squared/AppIcon29x29.png Binary files differindex 088a668b31..5d4c0f4049 100644 --- a/tools/darwin/packaging/media/ios/squared/AppIcon29x29.png +++ b/tools/darwin/packaging/media/ios/squared/AppIcon29x29.png diff --git a/tools/darwin/packaging/media/ios/squared/AppIcon29x29@2x.png b/tools/darwin/packaging/media/ios/squared/AppIcon29x29@2x.png Binary files differindex 4b99efe5c3..be6b3aae3b 100644 --- a/tools/darwin/packaging/media/ios/squared/AppIcon29x29@2x.png +++ b/tools/darwin/packaging/media/ios/squared/AppIcon29x29@2x.png diff --git a/tools/darwin/packaging/media/ios/squared/AppIcon29x29l@3x.png b/tools/darwin/packaging/media/ios/squared/AppIcon29x29l@3x.png Binary files differnew file mode 100644 index 0000000000..f132b8314e --- /dev/null +++ b/tools/darwin/packaging/media/ios/squared/AppIcon29x29l@3x.png diff --git a/tools/darwin/packaging/media/ios/squared/AppIcon40x40.png b/tools/darwin/packaging/media/ios/squared/AppIcon40x40.png Binary files differindex 9bd93ee185..285d03daa6 100644 --- a/tools/darwin/packaging/media/ios/squared/AppIcon40x40.png +++ b/tools/darwin/packaging/media/ios/squared/AppIcon40x40.png diff --git a/tools/darwin/packaging/media/ios/squared/AppIcon40x40@2x.png b/tools/darwin/packaging/media/ios/squared/AppIcon40x40@2x.png Binary files differindex b3ec2304c2..7561d9b2cb 100644 --- a/tools/darwin/packaging/media/ios/squared/AppIcon40x40@2x.png +++ b/tools/darwin/packaging/media/ios/squared/AppIcon40x40@2x.png diff --git a/tools/darwin/packaging/media/ios/squared/AppIcon40x40@3x.png b/tools/darwin/packaging/media/ios/squared/AppIcon40x40@3x.png Binary files differnew file mode 100644 index 0000000000..06d3ada142 --- /dev/null +++ b/tools/darwin/packaging/media/ios/squared/AppIcon40x40@3x.png diff --git a/tools/darwin/packaging/media/ios/squared/AppIcon50x50.png b/tools/darwin/packaging/media/ios/squared/AppIcon50x50.png Binary files differindex b4aa7b6f9c..e9bbb81be6 100644 --- a/tools/darwin/packaging/media/ios/squared/AppIcon50x50.png +++ b/tools/darwin/packaging/media/ios/squared/AppIcon50x50.png diff --git a/tools/darwin/packaging/media/ios/squared/AppIcon50x50@2x.png b/tools/darwin/packaging/media/ios/squared/AppIcon50x50@2x.png Binary files differindex 4a127e42b1..a907072304 100644 --- a/tools/darwin/packaging/media/ios/squared/AppIcon50x50@2x.png +++ b/tools/darwin/packaging/media/ios/squared/AppIcon50x50@2x.png diff --git a/tools/darwin/packaging/media/ios/squared/AppIcon57x57.png b/tools/darwin/packaging/media/ios/squared/AppIcon57x57.png Binary files differindex 6c124fce71..6e33ea2e1d 100644 --- a/tools/darwin/packaging/media/ios/squared/AppIcon57x57.png +++ b/tools/darwin/packaging/media/ios/squared/AppIcon57x57.png diff --git a/tools/darwin/packaging/media/ios/squared/AppIcon57x57@2x.png b/tools/darwin/packaging/media/ios/squared/AppIcon57x57@2x.png Binary files differindex 02ea9ef96d..cadd7f5a34 100644 --- a/tools/darwin/packaging/media/ios/squared/AppIcon57x57@2x.png +++ b/tools/darwin/packaging/media/ios/squared/AppIcon57x57@2x.png diff --git a/tools/darwin/packaging/media/ios/squared/AppIcon60x60.png b/tools/darwin/packaging/media/ios/squared/AppIcon60x60.png Binary files differindex cf359c35ba..16f0fb5016 100644 --- a/tools/darwin/packaging/media/ios/squared/AppIcon60x60.png +++ b/tools/darwin/packaging/media/ios/squared/AppIcon60x60.png diff --git a/tools/darwin/packaging/media/ios/squared/AppIcon60x60@2x.png b/tools/darwin/packaging/media/ios/squared/AppIcon60x60@2x.png Binary files differindex 2af506bff1..105e7961ee 100644 --- a/tools/darwin/packaging/media/ios/squared/AppIcon60x60@2x.png +++ b/tools/darwin/packaging/media/ios/squared/AppIcon60x60@2x.png diff --git a/tools/darwin/packaging/media/ios/squared/AppIcon60x60@3x.png b/tools/darwin/packaging/media/ios/squared/AppIcon60x60@3x.png Binary files differnew file mode 100644 index 0000000000..a5a5afac04 --- /dev/null +++ b/tools/darwin/packaging/media/ios/squared/AppIcon60x60@3x.png diff --git a/tools/darwin/packaging/media/ios/squared/AppIcon72x72.png b/tools/darwin/packaging/media/ios/squared/AppIcon72x72.png Binary files differindex a7805eb79f..87d52de5c1 100644 --- a/tools/darwin/packaging/media/ios/squared/AppIcon72x72.png +++ b/tools/darwin/packaging/media/ios/squared/AppIcon72x72.png diff --git a/tools/darwin/packaging/media/ios/squared/AppIcon72x72@2x.png b/tools/darwin/packaging/media/ios/squared/AppIcon72x72@2x.png Binary files differindex b04715b699..1b695184e2 100644 --- a/tools/darwin/packaging/media/ios/squared/AppIcon72x72@2x.png +++ b/tools/darwin/packaging/media/ios/squared/AppIcon72x72@2x.png diff --git a/tools/darwin/packaging/media/ios/squared/AppIcon76x76.png b/tools/darwin/packaging/media/ios/squared/AppIcon76x76.png Binary files differindex 00182a51d8..c76cc57845 100644 --- a/tools/darwin/packaging/media/ios/squared/AppIcon76x76.png +++ b/tools/darwin/packaging/media/ios/squared/AppIcon76x76.png diff --git a/tools/darwin/packaging/media/ios/squared/AppIcon76x76@2x.png b/tools/darwin/packaging/media/ios/squared/AppIcon76x76@2x.png Binary files differindex 70115c7d50..b9211612bb 100644 --- a/tools/darwin/packaging/media/ios/squared/AppIcon76x76@2x.png +++ b/tools/darwin/packaging/media/ios/squared/AppIcon76x76@2x.png diff --git a/tools/darwin/packaging/media/osx/background/DiskImageBackgroundKodi.png b/tools/darwin/packaging/media/osx/background/DiskImageBackgroundKodi.png Binary files differnew file mode 100644 index 0000000000..a41c8f26f2 --- /dev/null +++ b/tools/darwin/packaging/media/osx/background/DiskImageBackgroundKodi.png diff --git a/tools/darwin/packaging/media/osx/icon.iconset/icon_128x128.png b/tools/darwin/packaging/media/osx/icon.iconset/icon_128x128.png Binary files differindex baa9a6e239..62c42a65ce 100644 --- a/tools/darwin/packaging/media/osx/icon.iconset/icon_128x128.png +++ b/tools/darwin/packaging/media/osx/icon.iconset/icon_128x128.png diff --git a/tools/darwin/packaging/media/osx/icon.iconset/icon_128x128@2x.png b/tools/darwin/packaging/media/osx/icon.iconset/icon_128x128@2x.png Binary files differindex 280fd6fe3c..d0afe0f56e 100644 --- a/tools/darwin/packaging/media/osx/icon.iconset/icon_128x128@2x.png +++ b/tools/darwin/packaging/media/osx/icon.iconset/icon_128x128@2x.png diff --git a/tools/darwin/packaging/media/osx/icon.iconset/icon_16x16.png b/tools/darwin/packaging/media/osx/icon.iconset/icon_16x16.png Binary files differindex 6df79830e0..659ac40d90 100644 --- a/tools/darwin/packaging/media/osx/icon.iconset/icon_16x16.png +++ b/tools/darwin/packaging/media/osx/icon.iconset/icon_16x16.png diff --git a/tools/darwin/packaging/media/osx/icon.iconset/icon_16x16@2x.png b/tools/darwin/packaging/media/osx/icon.iconset/icon_16x16@2x.png Binary files differindex 745c260946..3bf2494ebf 100644 --- a/tools/darwin/packaging/media/osx/icon.iconset/icon_16x16@2x.png +++ b/tools/darwin/packaging/media/osx/icon.iconset/icon_16x16@2x.png diff --git a/tools/darwin/packaging/media/osx/icon.iconset/icon_256x256.png b/tools/darwin/packaging/media/osx/icon.iconset/icon_256x256.png Binary files differindex 5cc7e2d32b..eb9a2fca45 100644 --- a/tools/darwin/packaging/media/osx/icon.iconset/icon_256x256.png +++ b/tools/darwin/packaging/media/osx/icon.iconset/icon_256x256.png diff --git a/tools/darwin/packaging/media/osx/icon.iconset/icon_256x256@2x.png b/tools/darwin/packaging/media/osx/icon.iconset/icon_256x256@2x.png Binary files differindex 8ffb8b8527..2245551faf 100644 --- a/tools/darwin/packaging/media/osx/icon.iconset/icon_256x256@2x.png +++ b/tools/darwin/packaging/media/osx/icon.iconset/icon_256x256@2x.png diff --git a/tools/darwin/packaging/media/osx/icon.iconset/icon_32x32.png b/tools/darwin/packaging/media/osx/icon.iconset/icon_32x32.png Binary files differindex 4a16472a7c..3bf2494ebf 100644 --- a/tools/darwin/packaging/media/osx/icon.iconset/icon_32x32.png +++ b/tools/darwin/packaging/media/osx/icon.iconset/icon_32x32.png diff --git a/tools/darwin/packaging/media/osx/icon.iconset/icon_32x32@2x.png b/tools/darwin/packaging/media/osx/icon.iconset/icon_32x32@2x.png Binary files differindex 097e8f9baa..97c6dcbf8f 100644 --- a/tools/darwin/packaging/media/osx/icon.iconset/icon_32x32@2x.png +++ b/tools/darwin/packaging/media/osx/icon.iconset/icon_32x32@2x.png diff --git a/tools/darwin/packaging/media/osx/icon.iconset/icon_512x512.png b/tools/darwin/packaging/media/osx/icon.iconset/icon_512x512.png Binary files differindex 8ffb8b8527..d34a89fcd8 100644 --- a/tools/darwin/packaging/media/osx/icon.iconset/icon_512x512.png +++ b/tools/darwin/packaging/media/osx/icon.iconset/icon_512x512.png diff --git a/tools/darwin/packaging/media/osx/icon.iconset/icon_512x512@2x.png b/tools/darwin/packaging/media/osx/icon.iconset/icon_512x512@2x.png Binary files differindex 0501cac248..944153e75f 100644 --- a/tools/darwin/packaging/media/osx/icon.iconset/icon_512x512@2x.png +++ b/tools/darwin/packaging/media/osx/icon.iconset/icon_512x512@2x.png diff --git a/tools/darwin/packaging/media/osx/volumeIcon.iconset/icon_128x128.png b/tools/darwin/packaging/media/osx/volumeIcon.iconset/icon_128x128.png Binary files differnew file mode 100644 index 0000000000..048b684525 --- /dev/null +++ b/tools/darwin/packaging/media/osx/volumeIcon.iconset/icon_128x128.png diff --git a/tools/darwin/packaging/media/osx/volumeIcon.iconset/icon_128x128@2x.png b/tools/darwin/packaging/media/osx/volumeIcon.iconset/icon_128x128@2x.png Binary files differnew file mode 100644 index 0000000000..25dcc1f80a --- /dev/null +++ b/tools/darwin/packaging/media/osx/volumeIcon.iconset/icon_128x128@2x.png diff --git a/tools/darwin/packaging/media/osx/volumeIcon.iconset/icon_16x16.png b/tools/darwin/packaging/media/osx/volumeIcon.iconset/icon_16x16.png Binary files differnew file mode 100644 index 0000000000..dd3408b575 --- /dev/null +++ b/tools/darwin/packaging/media/osx/volumeIcon.iconset/icon_16x16.png diff --git a/tools/darwin/packaging/media/osx/volumeIcon.iconset/icon_16x16@2x.png b/tools/darwin/packaging/media/osx/volumeIcon.iconset/icon_16x16@2x.png Binary files differnew file mode 100644 index 0000000000..4f2fd1a353 --- /dev/null +++ b/tools/darwin/packaging/media/osx/volumeIcon.iconset/icon_16x16@2x.png diff --git a/tools/darwin/packaging/media/osx/volumeIcon.iconset/icon_256x256.png b/tools/darwin/packaging/media/osx/volumeIcon.iconset/icon_256x256.png Binary files differnew file mode 100644 index 0000000000..728039ebda --- /dev/null +++ b/tools/darwin/packaging/media/osx/volumeIcon.iconset/icon_256x256.png diff --git a/tools/darwin/packaging/media/osx/volumeIcon.iconset/icon_256x256@2x.png b/tools/darwin/packaging/media/osx/volumeIcon.iconset/icon_256x256@2x.png Binary files differnew file mode 100644 index 0000000000..dcfbf65a85 --- /dev/null +++ b/tools/darwin/packaging/media/osx/volumeIcon.iconset/icon_256x256@2x.png diff --git a/tools/darwin/packaging/media/osx/volumeIcon.iconset/icon_32x32.png b/tools/darwin/packaging/media/osx/volumeIcon.iconset/icon_32x32.png Binary files differnew file mode 100644 index 0000000000..1be6666379 --- /dev/null +++ b/tools/darwin/packaging/media/osx/volumeIcon.iconset/icon_32x32.png diff --git a/tools/darwin/packaging/media/osx/volumeIcon.iconset/icon_32x32@2x.png b/tools/darwin/packaging/media/osx/volumeIcon.iconset/icon_32x32@2x.png Binary files differnew file mode 100644 index 0000000000..358c02aaf6 --- /dev/null +++ b/tools/darwin/packaging/media/osx/volumeIcon.iconset/icon_32x32@2x.png diff --git a/tools/darwin/packaging/media/osx/volumeIcon.iconset/icon_512x512.png b/tools/darwin/packaging/media/osx/volumeIcon.iconset/icon_512x512.png Binary files differnew file mode 100644 index 0000000000..dcfbf65a85 --- /dev/null +++ b/tools/darwin/packaging/media/osx/volumeIcon.iconset/icon_512x512.png diff --git a/tools/darwin/packaging/media/osx/volumeIcon.iconset/icon_512x512@2x.png b/tools/darwin/packaging/media/osx/volumeIcon.iconset/icon_512x512@2x.png Binary files differnew file mode 100644 index 0000000000..ba6d9e1935 --- /dev/null +++ b/tools/darwin/packaging/media/osx/volumeIcon.iconset/icon_512x512@2x.png diff --git a/tools/darwin/packaging/osx/VolumeDSStore b/tools/darwin/packaging/osx/VolumeDSStore Binary files differdeleted file mode 100644 index 387b6e21eb..0000000000 --- a/tools/darwin/packaging/osx/VolumeDSStore +++ /dev/null diff --git a/tools/darwin/packaging/osx/VolumeDSStoreApp b/tools/darwin/packaging/osx/VolumeDSStoreApp Binary files differindex f1a82a4bbb..2a9c3edc72 100644 --- a/tools/darwin/packaging/osx/VolumeDSStoreApp +++ b/tools/darwin/packaging/osx/VolumeDSStoreApp diff --git a/tools/darwin/packaging/osx/VolumeIcon.icns b/tools/darwin/packaging/osx/VolumeIcon.icns Binary files differdeleted file mode 100644 index 75215701b6..0000000000 --- a/tools/darwin/packaging/osx/VolumeIcon.icns +++ /dev/null diff --git a/tools/darwin/packaging/osx/background/DiskImageBackground.png b/tools/darwin/packaging/osx/background/DiskImageBackground.png Binary files differdeleted file mode 100644 index 2299a1ac75..0000000000 --- a/tools/darwin/packaging/osx/background/DiskImageBackground.png +++ /dev/null diff --git a/tools/darwin/packaging/osx/background/DiskImageBackgroundDebug.png b/tools/darwin/packaging/osx/background/DiskImageBackgroundDebug.png Binary files differdeleted file mode 100644 index 2299a1ac75..0000000000 --- a/tools/darwin/packaging/osx/background/DiskImageBackgroundDebug.png +++ /dev/null diff --git a/tools/darwin/packaging/osx/dmgmaker.pl b/tools/darwin/packaging/osx/dmgmaker.pl index 4720bf047a..a24614d538 100755 --- a/tools/darwin/packaging/osx/dmgmaker.pl +++ b/tools/darwin/packaging/osx/dmgmaker.pl @@ -38,6 +38,10 @@ sub make_dmg { $dev_handle = $1 if $dev_handle =~ /^\/dev\/(disk.)/; die("Could not obtain device handle\n") if !$dev_handle; print "Got device handle \"$dev_handle\"\n"; + #clear the volume - we will copy stuff on it with ditto later + #this removes crap which might have come in via the srcfolder + #parameter of hdiutil above + `rm -r /Volumes/$volname/*`; print "Ignore \"No space left on device\" warnings from ditto, they are an autosize artifact\n"; `ditto "$mpkg" "/Volumes/$volname/$pkgname.$ext"`; @@ -48,17 +52,10 @@ sub make_dmg { # make symlink to /Applications `ln -s /Applications "/Volumes/$volname/Applications"`; - if ( -d "background" ) { - `mkdir "/Volumes/$volname/background"`; - `ditto background "/Volumes/$volname/background/"`; - } - if ( -f "VolumeDSStore" ) { - `ditto VolumeDSStore "/Volumes/$volname/.DS_Store"` if $ext ne "app"; - `ditto VolumeDSStoreApp "/Volumes/$volname/.DS_Store"` if $ext eq "app"; - } - if ( -d "background" ) { - `xcrun SetFile -a V "/Volumes/$volname/background"`; - } + `mkdir "/Volumes/$volname/background"`; + `ditto ../media/osx/background "/Volumes/$volname/background/"`; + `ditto VolumeDSStoreApp "/Volumes/$volname/.DS_Store"`; + `xcrun SetFile -a V "/Volumes/$volname/background"`; `xcrun SetFile -a C "/Volumes/$volname/"`; `hdiutil detach $dev_handle`; `hdiutil convert "$volname.dmg" -format UDZO -imagekey zlib-level=9 -o "$volname.udzo.dmg"`; diff --git a/tools/darwin/packaging/osx/mkdmg-osx.sh.in b/tools/darwin/packaging/osx/mkdmg-osx.sh.in index 8a4dfe6a7b..33c13dd45a 100755 --- a/tools/darwin/packaging/osx/mkdmg-osx.sh.in +++ b/tools/darwin/packaging/osx/mkdmg-osx.sh.in @@ -36,6 +36,13 @@ then umount /Volumes/$ARCHIVE fi +#generate volume iconset +if [ `which iconutil` ] +then + echo "Generating volumeIcon.icns" + iconutil -c icns --output "VolumeIcon.icns" "../media/osx/volumeIcon.iconset" +fi + $DIRNAME/dmgmaker.pl $APP $ARCHIVE echo "done" diff --git a/tools/windows/packaging/media/application.ico b/tools/windows/packaging/media/application.ico Binary files differnew file mode 100644 index 0000000000..c63582724d --- /dev/null +++ b/tools/windows/packaging/media/application.ico diff --git a/tools/windows/packaging/media/installer/header.bmp b/tools/windows/packaging/media/installer/header.bmp Binary files differindex 5b802a8ea6..e0ac21fa29 100644 --- a/tools/windows/packaging/media/installer/header.bmp +++ b/tools/windows/packaging/media/installer/header.bmp diff --git a/tools/windows/packaging/media/installer/welcome-left.bmp b/tools/windows/packaging/media/installer/welcome-left.bmp Binary files differindex 56e8340092..121dbf96b5 100644 --- a/tools/windows/packaging/media/installer/welcome-left.bmp +++ b/tools/windows/packaging/media/installer/welcome-left.bmp diff --git a/tools/windows/packaging/media/xbmc.ico b/tools/windows/packaging/media/xbmc.ico Binary files differdeleted file mode 100644 index b5caca122f..0000000000 --- a/tools/windows/packaging/media/xbmc.ico +++ /dev/null diff --git a/xbmc/cores/VideoRenderers/LinuxRendererGL.cpp b/xbmc/cores/VideoRenderers/LinuxRendererGL.cpp index cf0b7d4156..468c51b2a0 100644 --- a/xbmc/cores/VideoRenderers/LinuxRendererGL.cpp +++ b/xbmc/cores/VideoRenderers/LinuxRendererGL.cpp @@ -3350,9 +3350,9 @@ bool CLinuxRendererGL::Supports(EINTERLACEMETHOD method) return false; } -#ifdef TARGET_DARWIN - // YADIF too slow for HD but we have no methods to fall back - // to something that works so just turn it off. +#ifdef TARGET_DARWIN_IOS + // iOS has not the power for YADIF - TODO evaluate if its + // enough to disable it for TARGET_DARWIN_IOS_ATV2 if(method == VS_INTERLACEMETHOD_DEINTERLACE) return false; #endif diff --git a/xbmc/cores/VideoRenderers/LinuxRendererGLES.cpp b/xbmc/cores/VideoRenderers/LinuxRendererGLES.cpp index 20a464fa71..81fe19b063 100644 --- a/xbmc/cores/VideoRenderers/LinuxRendererGLES.cpp +++ b/xbmc/cores/VideoRenderers/LinuxRendererGLES.cpp @@ -1031,6 +1031,7 @@ void CLinuxRendererGLES::Render(DWORD flags, int index) else if (m_renderMethod & RENDER_IMXMAP) { RenderIMXMAPTexture(index, m_currentField); + VerifyGLState(); } else { @@ -2770,7 +2771,7 @@ bool CLinuxRendererGLES::CreateIMXMAPTexture(int index) YUVFIELDS &fields = m_buffers[index].fields; YUVPLANE &plane = fields[0][0]; - DeleteEGLIMGTexture(index); + DeleteIMXMAPTexture(index); memset(&im , 0, sizeof(im)); memset(&fields, 0, sizeof(fields)); diff --git a/xbmc/cores/dvdplayer/DVDPlayer.cpp b/xbmc/cores/dvdplayer/DVDPlayer.cpp index 09e1f257a9..7d6e69617c 100644 --- a/xbmc/cores/dvdplayer/DVDPlayer.cpp +++ b/xbmc/cores/dvdplayer/DVDPlayer.cpp @@ -2819,10 +2819,10 @@ void CDVDPlayer::GetGeneralInfo(std::string& strGeneralInfo) if(m_StateInput.cache_bytes >= 0) { strBuf += StringUtils::Format(" cache:%s %2.0f%%" - , StringUtils::SizeToString(m_State.cache_bytes).c_str() - , m_State.cache_level * 100); + , StringUtils::SizeToString(m_StateInput.cache_bytes).c_str() + , m_StateInput.cache_level * 100); if(m_playSpeed == 0 || m_caching == CACHESTATE_FULL) - strBuf += StringUtils::Format(" %d sec", DVD_TIME_TO_SEC(m_State.cache_delay)); + strBuf += StringUtils::Format(" %d sec", DVD_TIME_TO_SEC(m_StateInput.cache_delay)); } strGeneralInfo = StringUtils::Format("C( ad:% 6.3f, a/v:% 6.3f%s, dcpu:%2i%% acpu:%2i%% vcpu:%2i%%%s af:%d%% vf:%d%% amp:% 5.2f )" @@ -2855,10 +2855,10 @@ void CDVDPlayer::GetGeneralInfo(std::string& strGeneralInfo) if(m_StateInput.cache_bytes >= 0) { strBuf += StringUtils::Format(" cache:%s %2.0f%%" - , StringUtils::SizeToString(m_State.cache_bytes).c_str() - , m_State.cache_level * 100); + , StringUtils::SizeToString(m_StateInput.cache_bytes).c_str() + , m_StateInput.cache_level * 100); if(m_playSpeed == 0 || m_caching == CACHESTATE_FULL) - strBuf += StringUtils::Format(" %d sec", DVD_TIME_TO_SEC(m_State.cache_delay)); + strBuf += StringUtils::Format(" %d sec", DVD_TIME_TO_SEC(m_StateInput.cache_delay)); } strGeneralInfo = StringUtils::Format("C( ad:% 6.3f, a/v:% 6.3f%s, dcpu:%2i%% acpu:%2i%% vcpu:%2i%%%s )" diff --git a/xbmc/cores/dvdplayer/DVDPlayerVideo.cpp b/xbmc/cores/dvdplayer/DVDPlayerVideo.cpp index e47f85c773..f030e37282 100644 --- a/xbmc/cores/dvdplayer/DVDPlayerVideo.cpp +++ b/xbmc/cores/dvdplayer/DVDPlayerVideo.cpp @@ -512,7 +512,7 @@ void CDVDPlayerVideo::Process() } bRequestDrop = false; - iDropDirective = CalcDropRequirement(pts); + iDropDirective = CalcDropRequirement(pts, false); if (iDropDirective & EOS_VERYLATE) { if (m_bAllowDrop) @@ -748,6 +748,9 @@ void CDVDPlayerVideo::Process() if (iDecoderState & VC_BUFFER) break; + // update dropping stats + CalcDropRequirement(pts, true); + // the decoder didn't need more data, flush the remaning buffer iDecoderState = m_pVideoCodec->Decode(NULL, 0, DVD_NOPTS_VALUE, DVD_NOPTS_VALUE); } @@ -1554,7 +1557,7 @@ void CDVDPlayerVideo::CalcFrameRate() } } -int CDVDPlayerVideo::CalcDropRequirement(double pts) +int CDVDPlayerVideo::CalcDropRequirement(double pts, bool updateOnly) { int result = 0; double iSleepTime; @@ -1622,6 +1625,9 @@ int CDVDPlayerVideo::CalcDropRequirement(double pts) } m_droppingStats.m_lastDecoderPts = iDecoderPts; + if (updateOnly) + return result; + // subtract gains while (!m_droppingStats.m_gain.empty() && iRenderPts >= m_droppingStats.m_gain.front().pts) diff --git a/xbmc/cores/dvdplayer/DVDPlayerVideo.h b/xbmc/cores/dvdplayer/DVDPlayerVideo.h index 4e1b3d6d36..489ebfc95a 100644 --- a/xbmc/cores/dvdplayer/DVDPlayerVideo.h +++ b/xbmc/cores/dvdplayer/DVDPlayerVideo.h @@ -149,7 +149,7 @@ protected: void ResetFrameRateCalc(); void CalcFrameRate(); - int CalcDropRequirement(double pts); + int CalcDropRequirement(double pts, bool updateOnly); double m_fFrameRate; //framerate of the video currently playing bool m_bCalcFrameRate; //if we should calculate the framerate from the timestamps diff --git a/xbmc/filesystem/CacheStrategy.cpp b/xbmc/filesystem/CacheStrategy.cpp index acc86afd35..c1d1409840 100644 --- a/xbmc/filesystem/CacheStrategy.cpp +++ b/xbmc/filesystem/CacheStrategy.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2005-2013 Team XBMC + * Copyright (C) 2005-2014 Team XBMC * http://xbmc.org * * This Program is free software; you can redistribute it and/or modify @@ -126,6 +126,11 @@ void CSimpleFileCache::Close() m_filename.clear(); } +size_t CSimpleFileCache::GetMaxWriteSize(const size_t& iRequestSize) +{ + return iRequestSize; // Can always write since it's on disk +} + int CSimpleFileCache::WriteToCache(const char *pBuffer, size_t iSize) { size_t written = 0; @@ -272,25 +277,25 @@ CCacheStrategy *CSimpleFileCache::CreateNew() } -CSimpleDoubleCache::CSimpleDoubleCache(CCacheStrategy *impl) +CDoubleCache::CDoubleCache(CCacheStrategy *impl) { assert(NULL != impl); m_pCache = impl; m_pCacheOld = NULL; } -CSimpleDoubleCache::~CSimpleDoubleCache() +CDoubleCache::~CDoubleCache() { delete m_pCache; delete m_pCacheOld; } -int CSimpleDoubleCache::Open() +int CDoubleCache::Open() { return m_pCache->Open(); } -void CSimpleDoubleCache::Close() +void CDoubleCache::Close() { m_pCache->Close(); if (m_pCacheOld) @@ -300,27 +305,32 @@ void CSimpleDoubleCache::Close() } } -int CSimpleDoubleCache::WriteToCache(const char *pBuffer, size_t iSize) +size_t CDoubleCache::GetMaxWriteSize(const size_t& iRequestSize) +{ + return m_pCache->GetMaxWriteSize(iRequestSize); // NOTE: Check the active cache only +} + +int CDoubleCache::WriteToCache(const char *pBuffer, size_t iSize) { return m_pCache->WriteToCache(pBuffer, iSize); } -int CSimpleDoubleCache::ReadFromCache(char *pBuffer, size_t iMaxSize) +int CDoubleCache::ReadFromCache(char *pBuffer, size_t iMaxSize) { return m_pCache->ReadFromCache(pBuffer, iMaxSize); } -int64_t CSimpleDoubleCache::WaitForData(unsigned int iMinAvail, unsigned int iMillis) +int64_t CDoubleCache::WaitForData(unsigned int iMinAvail, unsigned int iMillis) { return m_pCache->WaitForData(iMinAvail, iMillis); } -int64_t CSimpleDoubleCache::Seek(int64_t iFilePosition) +int64_t CDoubleCache::Seek(int64_t iFilePosition) { return m_pCache->Seek(iFilePosition); } -void CSimpleDoubleCache::Reset(int64_t iSourcePosition, bool clearAnyway) +void CDoubleCache::Reset(int64_t iSourcePosition, bool clearAnyway) { if (!clearAnyway && m_pCache->IsCachedPosition(iSourcePosition) && (!m_pCacheOld || !m_pCacheOld->IsCachedPosition(iSourcePosition) @@ -349,27 +359,27 @@ void CSimpleDoubleCache::Reset(int64_t iSourcePosition, bool clearAnyway) m_pCache = tmp; } -void CSimpleDoubleCache::EndOfInput() +void CDoubleCache::EndOfInput() { m_pCache->EndOfInput(); } -bool CSimpleDoubleCache::IsEndOfInput() +bool CDoubleCache::IsEndOfInput() { return m_pCache->IsEndOfInput(); } -void CSimpleDoubleCache::ClearEndOfInput() +void CDoubleCache::ClearEndOfInput() { m_pCache->ClearEndOfInput(); } -int64_t CSimpleDoubleCache::CachedDataEndPos() +int64_t CDoubleCache::CachedDataEndPos() { return m_pCache->CachedDataEndPos(); } -int64_t CSimpleDoubleCache::CachedDataEndPosIfSeekTo(int64_t iFilePosition) +int64_t CDoubleCache::CachedDataEndPosIfSeekTo(int64_t iFilePosition) { int64_t ret = m_pCache->CachedDataEndPosIfSeekTo(iFilePosition); if (m_pCacheOld) @@ -377,13 +387,13 @@ int64_t CSimpleDoubleCache::CachedDataEndPosIfSeekTo(int64_t iFilePosition) return ret; } -bool CSimpleDoubleCache::IsCachedPosition(int64_t iFilePosition) +bool CDoubleCache::IsCachedPosition(int64_t iFilePosition) { return m_pCache->IsCachedPosition(iFilePosition) || (m_pCacheOld && m_pCacheOld->IsCachedPosition(iFilePosition)); } -CCacheStrategy *CSimpleDoubleCache::CreateNew() +CCacheStrategy *CDoubleCache::CreateNew() { - return new CSimpleDoubleCache(m_pCache->CreateNew()); + return new CDoubleCache(m_pCache->CreateNew()); } diff --git a/xbmc/filesystem/CacheStrategy.h b/xbmc/filesystem/CacheStrategy.h index 9ea7274e87..5067d01b26 100644 --- a/xbmc/filesystem/CacheStrategy.h +++ b/xbmc/filesystem/CacheStrategy.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2005-2013 Team XBMC + * Copyright (C) 2005-2014 Team XBMC * http://xbmc.org * * This Program is free software; you can redistribute it and/or modify @@ -44,6 +44,7 @@ public: virtual int Open() = 0; virtual void Close() = 0; + virtual size_t GetMaxWriteSize(const size_t& iRequestSize) = 0; virtual int WriteToCache(const char *pBuffer, size_t iSize) = 0; virtual int ReadFromCache(char *pBuffer, size_t iMaxSize) = 0; virtual int64_t WaitForData(unsigned int iMinAvail, unsigned int iMillis) = 0; @@ -76,6 +77,7 @@ public: virtual int Open() ; virtual void Close() ; + virtual size_t GetMaxWriteSize(const size_t& iRequestSize) ; virtual int WriteToCache(const char *pBuffer, size_t iSize) ; virtual int ReadFromCache(char *pBuffer, size_t iMaxSize) ; virtual int64_t WaitForData(unsigned int iMinAvail, unsigned int iMillis) ; @@ -102,14 +104,15 @@ protected: volatile int64_t m_nReadPosition; }; -class CSimpleDoubleCache : public CCacheStrategy{ +class CDoubleCache : public CCacheStrategy{ public: - CSimpleDoubleCache(CCacheStrategy *impl); - virtual ~CSimpleDoubleCache(); + CDoubleCache(CCacheStrategy *impl); + virtual ~CDoubleCache(); virtual int Open() ; virtual void Close() ; + virtual size_t GetMaxWriteSize(const size_t& iRequestSize) ; virtual int WriteToCache(const char *pBuffer, size_t iSize) ; virtual int ReadFromCache(char *pBuffer, size_t iMaxSize) ; virtual int64_t WaitForData(unsigned int iMinAvail, unsigned int iMillis) ; diff --git a/xbmc/filesystem/CircularCache.cpp b/xbmc/filesystem/CircularCache.cpp index b9ae64158a..746a64a935 100644 --- a/xbmc/filesystem/CircularCache.cpp +++ b/xbmc/filesystem/CircularCache.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2005-2013 Team XBMC + * Copyright (C) 2005-2014 Team XBMC * http://xbmc.org * * This Program is free software; you can redistribute it and/or modify @@ -76,6 +76,18 @@ void CCircularCache::Close() m_buf = NULL; } +size_t CCircularCache::GetMaxWriteSize(const size_t& iRequestSize) +{ + CSingleLock lock(m_sync); + + size_t back = (size_t)(m_cur - m_beg); // Backbuffer size + size_t front = (size_t)(m_end - m_cur); // Frontbuffer size + size_t limit = m_size - std::min(back, m_size_back) - front; + + // Never return more than limit and size requested by caller + return std::min(iRequestSize, limit); +} + /** * Function will write to m_buf at m_end % m_size location * it will write at maximum m_size, but it will only write @@ -166,7 +178,11 @@ int CCircularCache::ReadFromCache(char *buf, size_t len) return len; } -int64_t CCircularCache::WaitForData(unsigned int minumum, unsigned int millis) +/* Wait "millis" milliseconds for "minimum" amount of data to come in. + * Note that caller needs to make sure there's sufficient space in the forward + * buffer for "minimum" bytes else we may block the full timeout time + */ +int64_t CCircularCache::WaitForData(unsigned int minimum, unsigned int millis) { CSingleLock lock(m_sync); int64_t avail = m_end - m_cur; @@ -174,11 +190,11 @@ int64_t CCircularCache::WaitForData(unsigned int minumum, unsigned int millis) if(millis == 0 || IsEndOfInput()) return avail; - if(minumum > m_size - m_size_back) - minumum = m_size - m_size_back; + if(minimum > m_size - m_size_back) + minimum = m_size - m_size_back; XbmcThreads::EndTime endtime(millis); - while (!IsEndOfInput() && avail < minumum && !endtime.IsTimePast() ) + while (!IsEndOfInput() && avail < minimum && !endtime.IsTimePast() ) { lock.Leave(); m_written.WaitMSec(50); // may miss the deadline. shouldn't be a problem. @@ -197,6 +213,11 @@ int64_t CCircularCache::Seek(int64_t pos) // we try to avoid a (heavy) seek on the source if (pos >= m_end && pos < m_end + 100000) { + /* Make everything in the cache (back & forward) back-cache, to make sure + * there's sufficient forward space. Increasing it with only 100000 may not be + * sufficient due to variable filesystem chunksize + */ + m_cur = m_end; lock.Leave(); WaitForData((size_t)(pos - m_cur), 5000); lock.Enter(); diff --git a/xbmc/filesystem/CircularCache.h b/xbmc/filesystem/CircularCache.h index ae9e9b915f..f6aa6a792e 100644 --- a/xbmc/filesystem/CircularCache.h +++ b/xbmc/filesystem/CircularCache.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2005-2013 Team XBMC + * Copyright (C) 2005-2014 Team XBMC * http://xbmc.org * * This Program is free software; you can redistribute it and/or modify @@ -36,6 +36,7 @@ public: virtual int Open() ; virtual void Close(); + virtual size_t GetMaxWriteSize(const size_t& iRequestSize) ; virtual int WriteToCache(const char *buf, size_t len) ; virtual int ReadFromCache(char *buf, size_t len) ; virtual int64_t WaitForData(unsigned int minimum, unsigned int iMillis) ; diff --git a/xbmc/filesystem/FileCache.cpp b/xbmc/filesystem/FileCache.cpp index 50fe9b4a71..1ac2848316 100644 --- a/xbmc/filesystem/FileCache.cpp +++ b/xbmc/filesystem/FileCache.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2005-2013 Team XBMC + * Copyright (C) 2005-2014 Team XBMC * http://xbmc.org * * This Program is free software; you can redistribute it and/or modify @@ -100,7 +100,7 @@ CFileCache::CFileCache(bool useDoubleCache) : CThread("FileCache") } if (useDoubleCache) { - m_pCache = new CSimpleDoubleCache(m_pCache); + m_pCache = new CDoubleCache(m_pCache); } m_seekPossible = 0; m_cacheFull = false; @@ -219,7 +219,7 @@ void CFileCache::Process() { m_seekEvent.Reset(); int64_t cacheMaxPos = m_pCache->CachedDataEndPosIfSeekTo(m_seekPos); - cacheReachEOF = cacheMaxPos == m_source.GetLength(); + cacheReachEOF = (cacheMaxPos == m_source.GetLength()); bool sourceSeekFailed = false; if (!cacheReachEOF) { @@ -239,7 +239,7 @@ void CFileCache::Process() assert(m_writePos == cacheMaxPos); average.Reset(m_writePos); limiter.Reset(m_writePos); - m_cacheFull = false; + m_cacheFull = (m_pCache->GetMaxWriteSize(m_chunkSize) == 0); m_nSeekResult = m_seekPos; } @@ -264,9 +264,23 @@ void CFileCache::Process() } } + size_t maxWrite = m_pCache->GetMaxWriteSize(m_chunkSize); + m_cacheFull = (maxWrite == 0); + + /* Only read from source if there's enough write space in the cache + * else we may keep disposing data and seeking back on (slow) source + */ + if (m_cacheFull && !cacheReachEOF) + { + average.Pause(); + m_pCache->m_space.WaitMSec(5); + average.Resume(); + continue; + } + ssize_t iRead = 0; if (!cacheReachEOF) - iRead = m_source.Read(buffer.get(), m_chunkSize); + iRead = m_source.Read(buffer.get(), maxWrite); if (iRead == 0) { CLog::Log(LOGINFO, "CFileCache::Process - Hit eof."); @@ -300,13 +314,10 @@ void CFileCache::Process() } else if (iWrite == 0) { - m_cacheFull = true; average.Pause(); m_pCache->m_space.WaitMSec(5); average.Resume(); } - else - m_cacheFull = false; iTotalWrite += iWrite; diff --git a/xbmc/filesystem/MemBufferCache.cpp b/xbmc/filesystem/MemBufferCache.cpp index c430ce811b..7c1c61dad8 100644 --- a/xbmc/filesystem/MemBufferCache.cpp +++ b/xbmc/filesystem/MemBufferCache.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2005-2013 Team XBMC + * Copyright (C) 2005-2014 Team XBMC * http://xbmc.org * * This Program is free software; you can redistribute it and/or modify @@ -67,6 +67,15 @@ void MemBufferCache::Close() m_forwardBuffer.Clear(); } +size_t MemBufferCache::GetMaxWriteSize(const size_t& iRequestSize) +{ + CSingleLock lock(m_sync); + + // must also check the forward buffer. + // if we have leftovers from the previous seek - we need not read anymore until they are utilized + return (m_forwardBuffer.getMaxReadSize() == 0 && iRequestSize <= m_buffer.getMaxWriteSize()) ? iRequestSize : 0; +} + int MemBufferCache::WriteToCache(const char *pBuffer, size_t iSize) { CSingleLock lock(m_sync); diff --git a/xbmc/filesystem/MemBufferCache.h b/xbmc/filesystem/MemBufferCache.h index 5574a5bd7b..56b8d9cbf2 100644 --- a/xbmc/filesystem/MemBufferCache.h +++ b/xbmc/filesystem/MemBufferCache.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2005-2013 Team XBMC + * Copyright (C) 2005-2014 Team XBMC * http://xbmc.org * * This Program is free software; you can redistribute it and/or modify @@ -40,6 +40,7 @@ public: virtual int Open() ; virtual void Close(); + virtual size_t GetMaxWriteSize(const size_t& iRequestSize) ; virtual int WriteToCache(const char *pBuffer, size_t iSize) ; virtual int ReadFromCache(char *pBuffer, size_t iMaxSize) ; virtual int64_t WaitForData(unsigned int iMinAvail, unsigned int iMillis) ; diff --git a/xbmc/video/dialogs/GUIDialogVideoInfo.cpp b/xbmc/video/dialogs/GUIDialogVideoInfo.cpp index 21d2a580b5..626993695c 100644 --- a/xbmc/video/dialogs/GUIDialogVideoInfo.cpp +++ b/xbmc/video/dialogs/GUIDialogVideoInfo.cpp @@ -790,18 +790,17 @@ void CGUIDialogVideoInfo::OnGetFanart() { CFileItemList items; - CFileItem item(*m_movieItem->GetVideoInfoTag()); - if (item.HasArt("fanart")) + // Ensure the fanart is unpacked + m_movieItem->GetVideoInfoTag()->m_fanart.Unpack(); + + if (m_movieItem->HasArt("fanart")) { CFileItemPtr itemCurrent(new CFileItem("fanart://Current",false)); - itemCurrent->SetArt("thumb", item.GetArt("fanart")); + itemCurrent->SetArt("thumb", m_movieItem->GetArt("fanart")); itemCurrent->SetLabel(g_localizeStrings.Get(20440)); items.Add(itemCurrent); } - // ensure the fanart is unpacked - m_movieItem->GetVideoInfoTag()->m_fanart.Unpack(); - // Grab the thumbnails from the web for (unsigned int i = 0; i < m_movieItem->GetVideoInfoTag()->m_fanart.GetNumFanarts(); i++) { @@ -817,6 +816,7 @@ void CGUIDialogVideoInfo::OnGetFanart() items.Add(item); } + CFileItem item(*m_movieItem->GetVideoInfoTag()); CStdString strLocal = item.GetLocalFanart(); if (!strLocal.empty()) { diff --git a/xbmc/win32/XBMC_PC.rc.in b/xbmc/win32/XBMC_PC.rc.in index 00194064e8..7f215abbaf 100644 --- a/xbmc/win32/XBMC_PC.rc.in +++ b/xbmc/win32/XBMC_PC.rc.in @@ -96,7 +96,7 @@ END // Icon with lowest ID value placed first to ensure application icon // remains consistent on all systems. -IDI_MAIN_ICON ICON "xbmc.ico" +IDI_MAIN_ICON ICON "application.ico" |