Изображение музыки и видео из BackgroundAudioAgent в WP

Я пытаюсь установить изображение в музыке и видео, когда песня воспроизводится из BackgroundAudioAgent в wp7!

Мой код для загрузки изображения песни:

    WebClient client = new WebClient();
    client.CancelAsync();
    client.Headers[HttpRequestHeader.UserAgent] = "Mozilla/4.0 (Compatible; Windows NT 5.1; MSIE 6.0)" + " (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)";
    client.Headers[HttpRequestHeader.Referer] = constant.referer;
    client.Headers[HttpRequestHeader.CacheControl] = "no-cache";
    client.Headers[HttpRequestHeader.Pragma] = "no-cache";
    client.OpenReadAsync(new Uri(constant.viewit3_start + file_in + constant.viewit3_stop));

                    //Stream Completed
                    client.OpenReadCompleted += (s, ex) =>
                    {
                        if (ex.Error == null)
                        {
                            try
                            {
                                //Get mp3 stream data
                                long file_bytes = ex.Result.Length;

                                //Check clever rules
                                if (file_bytes >= constant.bit)
                                {
                                    //Isolated file
                                    using (IsolatedStorageFile myIsolatedStorage = IsolatedStorageFile.GetUserStoreForApplication())
                                    {
                                        using (IsolatedStorageFileStream fileStream = new IsolatedStorageFileStream(file_in + ".jpg", FileMode.Create, myIsolatedStorage))
                                        {
                                            try
                                            {
                                                using (BinaryWriter writer = new BinaryWriter(fileStream))
                                                {
                                                    int readCount = 0;
                                                    byte[] buffer = new byte[32];
                                                    using (BinaryReader reader = new BinaryReader(ex.Result))
                                                    {
                                                        //Read file in chunks in order to reduce memory consumption and increase performance
                                                        while (readCount < file_bytes)
                                                        {
                                                            int actual = reader.Read(buffer, 0, buffer.Length);
                                                            readCount += actual;
                                                            writer.Write(buffer, 0, actual);
                                                        }
                                                    }
                                                }
                                            }
                                            catch { if (show) { MessageBox.Show(constant.tile_again); } callback(false); }
                                        }
                                    }
                                    callback(true);
                                }
                                else { callback(false); }
                            }
                            catch { callback(false); }
                        }
                    };

Я думаю, что моя функция работает и загружает изображения, тогда я использую этот код, чтобы установить его как AlbumArt класса AudioTrack:

AudioTrack audiotrack1 = new AudioTrack(new Uri(file_i + ".mp3", UriKind.Relative), name_i, album_name, string.Empty, new Uri(file_in + ".jpg", UriKind.Relative), byte_i, EnabledPlayerControls.All);

Песня воспроизводится и показывает название и название альбома, но нет изображения в музыке и видео, почему? Может быть, что-то происходит с изолированными общими носителями, где-то я читал об этом?


person Stavros Koureas    schedule 23.11.2013    source источник
comment
Хорошо, моя функция загружает изображения, проверено сейчас, если я загружу их как поток, я могу установить изображение как растровое изображение для элемента xaml, но как в BackgroundAudioAgent?   -  person Stavros Koureas    schedule 23.11.2013


Ответы (1)


Решение заключается в размещении изображений в общем каталоге мультимедиа, чтобы MediaHub мог иметь доступ к контенту!

person Stavros Koureas    schedule 23.11.2013