Alla kanaler slutat fungera förutom SVT

Feb 15, 2010 at 9:20 PM

Hej,

Jag börjar i samma maner som alla/många andra: Tusen tack för en fantastisk plug in. Klock ren. bra, utmärkt. Och tyvärr är det så att fansen hör av sig först när det slutar fungera :(

Hur som helst, av någon anledning fungerar endast svt idag och inga andra kanaler. De andra kanalerna rendrerar bara svart bild utan ljud. Fjärren svarar på back, dvs inga felmeddelanden. Har andra samma problem som jag eller har det att göra med att jag krånglat lite med hårdvaran på min dator (ljudkort, men ändå...). Eller är det någon fin buggfix från adobe?

Igen, snyggt jobbat, och ja - kan du fixa skärmsläckaren hade det varit guld värt.

/Aleks

 

Coordinator
Feb 16, 2010 at 7:18 PM

Det är svart här också, ser jag nu :(
tyvärr har jag inte tid att försöka lösa det snart, men man vet aldrig...

Feb 25, 2010 at 1:49 PM

Hej

Jag har exakt samma problem. Bara SVT som funkar. Ganska viktigt att det andra kanalerna fungerar. När tror du att det kan fixas?

MVH

Stefan

Coordinator
Feb 25, 2010 at 3:35 PM
Edited Feb 25, 2010 at 3:35 PM

tidigast april.  (uppdaterat startsidan nu)

jobbar med två andra större projekt, med deadline, som måste gå före nu.

Feb 26, 2010 at 9:59 AM

Hej Namne

OK, jag återkommer i april och kollar hur det går. Din lösning är onekligen snygg annars. Ge järnet :-)

Vi hörs.

Stefan

Apr 20, 2010 at 11:13 AM

Hej Stefan,

I avsaknad på lyxfällan och jakt på nya marker har jag grävt mig ned i källkoden som du så generöst delar med dig. Jag har fixat ett fulhack som gör att viasat kanalerna fungerar. Fulhack är något av ett nyckelord... Jag är inte särskilt kunning i windowsprogrammering, men det är en start (en av anledningarna till att jag engagerat mig). Jag är mer bekant med c på hårdvarunivå.

Hur som helst kan jag egentligen inte hitta något fel utan problemet är sannorlik att flvplayer.swf är för gammal (jag gissar att det är denna: http://www.platipus.nl/flvplayer/). Tyvärr hittar jag inte någon nyare.

Så till fulhacket, jag har luskat ut att alla visat kanaler finns på samma url, vilket innebär att jag modiferat play raden på följande sätt. (Förresten, det är ett mysterie för mig hur du hittat alla tablåer på nätet med alla id...)

i settings.cs

string labba = "http://flvplayer.viastream.viasat.tv/flvplayer/play/swf/player100324.swf?affiliate=2se&country=se&id="+id+"&playerVersion=embed";
Microsoft.MediaCenter.Hosting.AddInHost.Current.MediaCenterEnvironment.NavigateToPage(Microsoft.MediaCenter.PageId.ExtensibilityUrl, labba); 

där id helt enkelt är

item.Attributes["id"].ToString()

Som du redan parsat fram....

Dvs, playern som används finns på Viasats sida och innehåller lite skräpdata i nedankant under uppspelning. Tyvärr krävs det ett mysklick på play knappen som kommer upp. Efter det spelar episoden fint. Jag hoppar såldeles över 169 samt 43 filerna.

Den version jag fixat i är inte den senaste, detta eftersom den inte bygger, jag gjorde lätt för mig och valde en äldre.

Detta fulhack räcker för mig i skrivande stund men jag vill inte dela med mig utan att konsultera dig. Vem vet det kommer kanske en finversion vilken dag som helst :)

Tack igen för ett supersjysst program

/Aleksandar

Coordinator
Apr 20, 2010 at 4:24 PM
AleksandarF wrote:

...

Nu fick man lite inspiration.

Har lagt upp en ny version(1.0.4). Jag fixade så man inte behöver klicka för att starta.

AleksandarF wrote:

Hur som helst kan jag egentligen inte hitta något fel utan problemet är sannorlik att flvplayer.swf är för gammal (jag gissar att det är denna: http://www.platipus.nl/flvplayer/). Tyvärr hittar jag inte någon nyare.

Det var säkert flvplayer.swf som var felet. Jag skapade den snabbt med Adobe Flash, men nu har jag inte programmet längre, så jag har inte kunnat felsöka.

AleksandarF wrote:

Förresten, det är ett mysterie för mig hur du hittat alla tablåer på nätet med alla id...

Jag hittade tablåerna, med hjälp av Wireshark. På Viasats gamla playsidor användes bara Flash, så jag fick övervaka nätverkstrafik för att kunna hitta datakällorna.


Tack för dina tips.

/Stefan

 

Apr 21, 2010 at 11:51 AM
Edited Apr 21, 2010 at 11:52 AM

Ja, jädrans vilken vilken inspiration, ny binär bara timmar efter mailet :)

Kul att man kan göra någon nytta även på sin pappaledighet. Och kul att intresset är så stort, det är ganska många som laddat ner den nya versionen på kort tid.

Nu när farten är uppe, vad tror du om att försöka fixa skärmsläckare problemet?

/Aleksandar

Apr 22, 2010 at 11:16 AM

Hej igen stefan,

jag har knackat ihop lite kode som förhindrar skärmsläckare samt display off, hoppas detta kan leda till vidare inspiration :)

i launch.cs

using System.Runtime.InteropServices;
//timer
using System;
using System.Timers;
        private static System.Timers.Timer aTimer;
        private string initalscreensaverstatus;
        private uint initalexecutionstate = 0;

        [DllImport("kernel32.dll", CharSet = CharSet.Auto, SetLastError = true)]
        static extern EXECUTION_STATE SetThreadExecutionState(EXECUTION_STATE flags);
        [Flags]
        public enum EXECUTION_STATE : uint
        {
            ES_SYSTEM_REQUIRED = 0x00000001,
            ES_DISPLAY_REQUIRED = 0x00000002,
            ES_AWAYMODE_REQUIRED = 0x00000040,
            // ES_USER_PRESENT = 0x00000004,
            ES_CONTINUOUS = 0x80000000
        }

        public void Initialize(Dictionary<string, object> appInfo, Dictionary<string, object> entryPointInfo)
        {
            //Take care of screen saver
            RegistryKey rkScreenSaver = Registry.CurrentUser.OpenSubKey(@"Control Panel\Desktop", true);
            initalscreensaverstatus = (string)rkScreenSaver.GetValue("ScreenSaveActive");
            if (initalscreensaverstatus != "0")
            {
                rkScreenSaver.SetValue( "ScreenSaveActive", "0" );
            }
            rkScreenSaver.Close();

            //handle power scheme, prevent sleep/monitor off
            initalexecutionstate = (uint)SetThreadExecutionState(EXECUTION_STATE.ES_SYSTEM_REQUIRED | EXECUTION_STATE.ES_CONTINUOUS | EXECUTION_STATE.ES_DISPLAY_REQUIRED);

            if (initalexecutionstate != 0)
            {
                // Create a timer with a ten second interval.
                aTimer = new System.Timers.Timer(10000);

                // Hook up the Elapsed event for the timer.
                aTimer.Elapsed += new ElapsedEventHandler(OnTimedEvent);

                // Set the Interval to 1,5 seconds (1500 milliseconds).
                aTimer.Interval = 1500;
                aTimer.Enabled = true;
            }
        }
        private static void OnTimedEvent(object source, ElapsedEventArgs e)
        {
            SetThreadExecutionState(EXECUTION_STATE.ES_DISPLAY_REQUIRED | EXECUTION_STATE.ES_CONTINUOUS);
        }

        public void Uninitialize()
        {
            RegistryKey rkScreenSaver = Registry.CurrentUser.OpenSubKey(@"Control Panel\Desktop", true);
            rkScreenSaver.SetValue("ScreenSaveActive", initalscreensaverstatus);
            rkScreenSaver.Close();
            if (initalexecutionstate != 0)
            {
                SetThreadExecutionState((EXECUTION_STATE)initalexecutionstate);
            }            
        }

 Enligt mina korta tester fungerar det fint i windows 7. Dvs den återställer även användarens ursprungliga settings. Spontant ser det ut att vara mycket kod för en liten sak, dock har jag surfat en del utan någon bättre lösning. Att timers är ställd på 1500 är att jag läste att någon timeout tid i vista är 2 sek... mycket möjligt att det fungerar även med 15 sek

mvh

/Aleksandar

Coordinator
Apr 24, 2010 at 7:35 PM

Ser ju bra ut. jag ska försöka ta en närmare titt på det imorgon.

Kul att någon äntligen bidrar med kod.

Apr 26, 2010 at 12:00 PM

Kul, ser fram emot en ny release,

det ironiska är att jag inte kan köra appen själv på min media dator som kör vista och testa på riktigt. Av någon anledning säger den illigal applicaton vid uppstart. "Could not load file or assembly 'Microsoft.MediaCenter, Version.... or one of it's dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception refm HRESULT: 0x80131040

Något som jag gissar att du har koll på?

Jag tycker som sagt att det är skitkul med lite ny programmering för mig, och bidrar gärna med kod efter förmåga.

Coordinator
Apr 27, 2010 at 5:41 PM

Ok, har precis lagt upp en ny release(v1.0.5).
jag har dock inte testad den.

Apr 27, 2010 at 7:37 PM

Betatestat (alphatestat), tyvärr fungerar det inte, Både skärmsläckaren och screen off inträffar. Fick du med timern, eller har du kanske lagt upp fel version? Jag har dubbeltestat min variant och den verkar fungera fint (i win 7).

Coordinator
Apr 27, 2010 at 9:35 PM

oj, glömde en liten sak.
Jag har bytt ut den nu. Håll tummarna.

Apr 28, 2010 at 9:42 AM

Klockrent! Utmärkt i på min vista dator och säkerligen på win7 också.

Förresten, jag har kvar bekymret, "could not load file or assembly 'Microsoft.MediaCenter, ..." "the located assembly's manifest definition does not match" .. Alla tips/trix uppskattas.

Vidare, det där klicket för att starta klippet behövs fortfarande (inte alltid, men ofta). Jag hade kunnat titta på det om jag hade senaste källkoden.

/Aleksandar

Apr 28, 2010 at 11:36 AM

Stefan

Nu funkar det bra. Kalasbra jobbat. Tack.

Stefan

Coordinator
Apr 28, 2010 at 12:05 PM

tack för ni testar.

det där "could not load file or assembly 'Microsoft.MediaCenter,...", kommer när du bygger den på Windows 7 och kör den på vista, eller?
Jag testade lite nu och hittade en lösning.
Kopiera Microsoft.MediaCenter.dll och Microsoft.MediaCenter.UI.dll från c:\Windows\ehome i vista till någon mapp på din windows 7-dator.
När du har öppnat projektet i Visual Studio, visa egenskaper(Properties) för projektet och välj Reference Paths. Lägg till mappen som du kopierade filerna till. Nu borde det fungera.


om klicket för att starta klippet. Jag gjorde så den klickar efter 3 sekunder. Det verkade vara tillräckligt då. En bättre lösning vore att göra så den väntar tills skärmen inte är svart och sedan klicka.
Jag laddar upp den senaste koden ikväll.

Apr 29, 2010 at 9:34 PM

Tack för hjälpen med could not load..... Jag har krånglat med det ganska länge utan framgång, men med rätt ref path fungerar det utmärkt.

Jag har sett att du har lagt upp ny källkod, skall ta mig en titt när jag får lite tid över.

Finns det något speciellt som man borde uppmärksamma och fixa/ändra?

/Aleksandar