/ / Silverlight MediaElement Position Властивість Дивовижність - сріблясте світло, аудіо, медіаелемент

Silverlight MediaElement Позиція Майна Weirdness - silverlight, аудіо, mediaelement

У мене є MediaElement, який звітує про цеположення неправильно та дивно, але послідовно. Схоже, що коли він дістається до останньої секунди аудіо (і це завжди остання секунда, незалежно від того, звук становить дві секунди або 10), він не змінює його положення, поки не закінчиться.


Приклад виходу:

Хід відтворення: 0 / 3,99 - 0 відтворення

Прогрес: 0,01 / 3,99 - 0 відтворення

Прогрес: 0,03 / 3,99 - 0 відтворення

Прогрес: 0,06 / 3,99 - 1 відтворення

Прогрес: 0,07 / 3,99 - 1 відтворення

Прогрес: 0,08 / 3,99 - 2 відтворення

Прогрес: 0,11 / 3,99 - 2 відтворення

Прогрес: 0,14 / 3,99 - 3 відтворення

Прогрес: 0,19 / 3,99 - 4 відтворення

Прогрес: 0,23 / 3,99 - 5 відтворення

Прогрес: 0,25 / 3,99 - 6 відтворення

Прогрес: 0,28 / 3,99 - 7 відтворення

Прогрес: 0,3 / 3,99 - 7 відтворення

[SNIP]

Хід відтворення: 2,8 / 3,99 - 70

Хід відтворення: 2,83 / 3,99 - 70

Хід відтворення: 2,88 / 3,99 - 72

Хід відтворення: 2,9 / 3,99 - 72

Хід відтворення: 2,91 / 3,99 - 72

Хід відтворення: 2,92 / 3,99 - 73

Хід відтворення: 2,99 / 3,99 - 74

Хід відтворення: 3 / 3,99 - 75

Хід відтворення: 3 / 3,99 - 75

Хід відтворення: 3 / 3,99 - 75

Хід відтворення: 3 / 3,99 - 75

Хід відтворення: 3 / 3,99 - 75

Хід відтворення: 3 / 3,99 - 75

Хід відтворення: 3 / 3,99 - 75

Хід відтворення: 3 / 3,99 - 75

Хід відтворення: 3 / 3,99 - 75

Хід відтворення: 3,99 / 3,99 - 100


Це результат:

    WriteLine("Playback Progress: " + Position + "/" + LengthInSeconds + " - " + (int)((Position / LengthInSeconds) * 100));

public double Position
{
get
{
return my_media_element != null ? my_media_element.Position.TotalSeconds : 0;
}
}

public double LengthInSeconds
{
get
{
return my_media_element != null ? my_media_element.NaturalDuration.TimeSpan.TotalSeconds : 0;
}
}

У когось є ідеї, чому це відбувається?

Відповіді:

2 для відповіді № 1

Властивість Position у Silverlight має ефект "затискання", який може спричинити це, щоб уникнути спроб сказати останні 1 вмісту.

На жаль, AFAIK не може легко виправити.