Archive

Archive for the ‘Silverlight 4’ Category

[SL4] : Silverlight 4.0.60129.0 GRD3 Runtime update KB2495644

Sortie d’une mise à jour attendue depuis de nombreux mois du runtime Silverlight 4. Celui-ci correspond au GRD3 en interne et est distribué sous la mise à jour KB2495644 et correspond au numéro de version : 4.0.60129.0

silverlight-logo

Pour la récuperer plusieurs adresses importantes :

Celle-ci corrige :

  • Souci du Timestamp lors de la lecture de médias avec le codec VC-1
  • Crash de VS lors du profiling d’une application Silverlight ayant des pixels shader
  • Possibilité de lancer Silverlight en tant que process 32-bit avec Firefox 64bits sur OSX
  • DRM 6207 error
  • Résolution du fameux problème de MemoryLeak introduit avec Silverlight 4 datant de plus de 10 mois (cf http://forums.silverlight.net/forums/t/171739.aspx : 13+ millions de lecture et 420+ réponses, autant dire qu’elle était attendue !) 
  • Mise a jour d’une application OOB ayant changé de nom
  • Amélioration de la latence réseau (cf : KB2505882)

Enjoy 🙂

Publicités
Catégories :Silverlight, Silverlight 4

[SL4] : Speech synthesis using NESL

NESL vous permet à présent d’utiliser la synthèse vocale dans une application Silverlight 4 OOB. Voyons comment faire cela.

Créez une application Silverlight 4 dans VisualStudio 2010 et activez le mode OOB dans les propriétées du projet.

image

Cliquez sur Out-of-Browser Settings…

Silverlight OOB

Cochez Require elavated trust when outside the browser.

Ajoutez un champ texte qui contiendra le texte que vous souhaitez lire et un bouton pour lancer la lecture !

XAML


<UserControl x:Class="SilverlightSpeech.MainPage"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">

    <Grid Background="White">
        <Grid.RowDefinitions>
            <RowDefinition />
            <RowDefinition Height="Auto" />
        </Grid.RowDefinitions>

     
        <TextBox x:Name="textToSpeech"
                 Text=""
                 AcceptsReturn="True" />
        <Button Content="test"
                Grid.Row="1"
                HorizontalAlignment="Center"
                Margin="0,5,0,5"
                Click="SpeechClick" />

    </Grid>
</UserControl>

Une fois cela réalisé il vous suffit de lancer la synthèse vocale grace aux trois lignes ci dessous :

CS

 

public partial class MainPage : UserControl
    {
        public MainPage()
        {
            InitializeComponent();
        }

        private void SpeechClick(object sender, RoutedEventArgs e)
        {
            SpeechSynthesizer synth = new SpeechSynthesizer();

            synth.Speak(textToSpeech.Text);
            synth.Dispose();
        }
    }

Votre application Silverlight 4 parle !

SilverlightSpeechNESL

Vous pouvez si vous le souhaitez ajouter les voix disponibles sur votre ordinateur grace à synth.GetVoices() qui vous donne un objet VoiceInfo contenant Name, Age et Gender. Ainsi vous pouvez personnaliser la lecture en fonction du sexe de l’utilisateur par exemple.

Catégories :Silverlight 4

[SL4] : Native Extensions

Actually Silverlight 4 OOB applications support COM automation when there have elevated trust privilege. But a lot of Windows 7 features aren’t avaible through COM automation.

Presentation

NFSL (Native Extensions for Microsoft Silverlight) comme to the rescue and expose some Windows 7 features like acces to :

  • Touch Features
    • Gesture support
    • Manipulation processing support
    • Inertia processing support
    • Touch hardware information

Platform Requirements

  • Windows 7 32-bit or 64-bit operating system
  • Silverlight 4 application running out-of-browser with elevated trust

Where download this library ?

http://code.msdn.microsoft.com/nesl/Release/ProjectReleases.aspx?ReleaseId=5368

Some samples in next blog posts, stay tuned.

Catégories :Silverlight 4

[SL4] : Canal+ adopte Silverlight 4 !

Un article interessant sur l’avenir de Silverlight et de la Vidéo sur le vieux continent !

http://www.journaldunet.com/solutions/intranet-extranet/canal-streaming-video-silverlight.shtml

Catégories :Silverlight 4

[SL4] : Silverlight 4 service release (Septembre 2010)

2 septembre 2010 2 commentaires

Une nouvelle version de Silverlight 4 (build 4.0.50826.0) vient de sortir avec le SDK developpeur qui va bien.
Quelques nouveautés très attendues par ceux qui travaillaient sur de grosses applications business :
– Ajouter une nouvelle ligne à une datagrid
– amélioration des performances du lancement des application
– gestion de la roulette de la souris en OOB Mac
– correction au niveau des DRM
– Et le meilleur (a vérifier tout de meme), la correction de Memory Leak introduits par la version 4 (lors de l’utilisation de MouseCapture et de DataTemple dans un UserControl, empéchant le Garbage Collector de supprimer les références des controles de la mémoire… !!!).
Détail des mises à jour dans le  KB2164913 que vous trouverez à l’adresse  http://support.microsoft.com/kb/2164913

Si vous souhaitez télécharger ces binaires rendez-vous :

  • Windows developer runtime
  • Mac developer runtime
  • Silverlight 4.0.50826.0 SDK
  •  

    Plus d’informations sur le blog de Tim Heuer: http://timheuer.com/blog/archive/2010/09/01/silverlight-service-release-september-2010-gdr1.aspx

    Catégories :Silverlight, Silverlight 4

    [SL4] : Photo 70 gigapixel grace à DeepZoom

    Une petit exemple de l’utilisation de DeepZoom avec une photo impressionnante de 70 gigapixel
    http://70gigapixel.cloudapp.net/

    Catégories :Silverlight, Silverlight 4

    [SL4] : Appels inter threads en WCF Data Services

    Petite subtilité présente en mode Out Of Browser de Silverlight 4 lors de l’appel de services WCF Data Services.

    En effet lorsque vous souhaitez ajouter des eléments à une ObservableCollection dans la callback du service, comme dans l’exemple ci dessous.

    public class RecetteCollectionViewModel : ObservableCollection<RecetteViewModel>
    	{
    		private DataServiceQuery<Recette> query = null;
    
    		public RecetteCollectionViewModel()
    		{
    			ModelContainer container = new ModelContainer(new Uri("http://localhost:51537/RecetteDataService.svc"));
    			query = container.CreateQuery<Recette>("RecetteSet");
    			query.BeginExecute(callback, null);
    		}
    
    		private void callback(IAsyncResult result)
    		{
    				List<Recette> recettes = query.EndExecute(result).ToList();
    
    				foreach (Recette r in recettes)
    				{
    											Add(new RecetteViewModel()
    						{
    							Titre = r.Titre,
    							DescriptionCourte = r.DescriptionCourte,
    							Photo = r.Photo
    						});
    									}
    
    		}
    
    	}
    

    Or lors du retour à la callback vous obtenez une erreur « Cross Thread Access »

    Il aurrait été logique de rajouter le code suivant :

    					App.Current.MainWindow.Dispatcher.BeginInvoke(delegate()
    					{
    //code à faire dans la callback
    });

    Mais vous devez utiliser le dispatcher provenant de Deployment en mode OOB :

    Deployment.Current.Dispatcher.BeginInvoke(delegate()
    			{
    //code à faire dans la callback
    			});
    
    Catégories :Silverlight, Silverlight 4