Flash-видео воспроизводится хорошо, но время и оставшееся время не синхронизированы

Это может быть известная проблема, проблема с моим кодом или недосмотр с моей стороны.

Я создал видеоплеер во флэш-памяти. У меня он играет в прогрессиве и в потоковом режиме через rtmp/rtmpt, так что все в порядке.

Моя единственная проблема заключается в том, что при воспроизведении видео временные коды времени воспроизведения и оставшегося времени не синхронизируются. Итак, если мое видео длится 20 секунд, а 5 были воспроизведены, время воспроизведения будет 5 секунд, оставшееся время будет 16 секунд, пока оно не обновится примерно через полсекунды.

Таким образом, хотя они оба устанавливаются с помощью одной и той же строки кода, они не меняются одновременно. Изменяется время воспроизведения, а через доли секунды изменяется оставшееся время.

Кто-нибудь понял, что это может быть. Возможно, просчет с моей стороны. Может быть, мне нужно округлить оставшееся время в большую или меньшую сторону. Как я могу синхронизировать два раза.

Я понимаю, что на этот вопрос, вероятно, сложно ответить, я сделал все возможное, чтобы объяснить это.

Заранее спасибо.


person jamesmhaley    schedule 31.05.2010    source источник
comment
Пожалуйста, опубликуйте код, который вы используете !!!   -  person Adrian Pirvulescu    schedule 10.06.2010


Ответы (1)


Это может быть так же просто, как проблема с тем, как часто вы обновляете каждый элемент.

Требуется дополнительная информация. Это пользовательский видеоплеер? Вы используете компонент FLVPlayback? Как вы устанавливаете время?

Похоже, что текущее время и общее время более точны, чем оставшееся время. Если это пользовательский видеоплеер, есть ли причина, по которой вместо использования двух переменных для оставшегося времени и времени воспроизведения вы не можете просто установить время воспроизведения с помощью переменной, а затем установить оставшееся время (totalTime - timePlayed )? Таким образом, они будут синхронизированы.

Это просто предположение на данный момент. Требуется дополнительная информация.

person lewiguez    schedule 03.06.2010
comment
Использована идея установки оставшегося времени на основе сыгранного времени и общего количества. Я устанавливал отдельную переменную, а затем выводил эту переменную. Таким образом, между обновлениями каждой переменной была некоторая задержка. Так что не ответ, но я на пути к нему :) - person jamesmhaley; 31.01.2011