Toon posts:

[flashMX] sound object > status van loading weergeven

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben bezig om een simpele mp3 speler te maken in flash.
Wat ik nu heb:

1 layer en daarin 1 frame, met de code:
code:
1
2
3
4
5
var geluid = new Sound();
geluid.loadSound("bestand.mp3", true);
totaal = geluid.getBytesTotal();
geladen = geluid.getBytesLoaded();
procent = Math.round(geladen / (totaal/100));


Ik wil nu graag een balkje laten lopen (van 0 naar 100) die aangeeft hoever hij geladen is.
Alleen ik heb ontzettend het gevoel (sterker nog, weet het wel zeker) dat ik het zo niet goed aanpak.

Ik kan namelijk niet naar frame 2 gaan, daar de status van laden bekijken, en weer terug gaan naar frame 1. Waarom niet; omdat hij niet naar frame 2 gaat voordat de hele mp3 geladen is.

Eigenlijk is mijn vraag heel simpel; wat is de pseudo opzet van mijn movie, zodat ik het laadproces kan laten zien? Ik wil tevens een tijdbalkje laten zien met daarin dus een balkje op de achtergrond die laat zien hoever hij geladen is en een (te slepen) indicator.

Tevens krijg ik het niet voor elkaar om weer te geven wat de lengte van de song is?
Als ik achter mijn code dit plak:
code:
1
info.text = geluid.duration;


dan krijg ik altijd 0 terug?

Nogmaals, wat is de pseudo (ik wil zeker geen code request doen, dan kan ik ook wel de player van Xangadix downloaden o.i.d.) opzet van mijn movie?
Moet ik het geluidsobject in een MC laden?
Wat ik eigenlijk wil is:

- Het object in frame 1 aanmaken.
- Naar frame en de status van het laden bekijken
- Naar frame 1 gaan en de status weergeven
- Uiteindelijk naar Frame 3 gaan o.i.d.

  • bdgroot
  • Registratie: Augustus 2002
  • Laatst online: 27-11-2024
Dit kun je doen met SetInterval. Geef daaraan een methode mee die uitgevoerd moet worden (bijvoorbeeld setProgress()) en een intervalltijd (elke 1 ms ofzo). Je hoeft dan niet naar Frame 2 te springen om te controleren, dit doe je pas als hij echt klaar is.
De reden dat geluid.duration niet werkt is simpel: als het bestand nog niet binnen is, dan kan hij deze informatie nog niet opvragen, dat staat zelfs in de help als ik me niet vergis.

Gebruik je een progressbar? Daaraan kun je gewoon het percentage dat je hebt berekend meegeven en klaar ben je!

[ Voor 13% gewijzigd door bdgroot op 28-05-2004 16:45 ]

Laat een computer nooit merken dat je gehaast bent.


Verwijderd

Topicstarter
Juistem, precies wat ik zocht.. ! Dank u vriendelijk! 8)

  • bdgroot
  • Registratie: Augustus 2002
  • Laatst online: 27-11-2024
:Y)

Laat een computer nooit merken dat je gehaast bent.


Verwijderd

Topicstarter
bdgroot schreef op 28 mei 2004 @ 16:44:
als het bestand nog niet binnen is, dan kan hij deze informatie nog niet opvragen, dat staat zelfs in de help als ik me niet vergis.
Ik vraag me wel af hoe ik dan een balkje kan meegeven die aangeeft waar de song op het moment is (qua speeltijd).
Zo'n balkje kan ik dus pas maken als de file helemaal binnen is?!
Appart, het leuke van een flash mp3-speler is nl. dat het streaming gebeurd, en dat hij al begint te spelen als hij nog niet eens helemaal binnen is.

  • XangadiX
  • Registratie: Oktober 2000
  • Laatst online: 20-05 08:42

XangadiX

trepanatie is zóó kinderachtig

het is niet zo moeilijk; met Setinterval kan het. De grootte van het bestand staat in de header van het bestand, dus bytes.total() weet ie wel.

meel me maar als je deze code wil hebben om te bekijken, http://www.wickedjazzsounds.nl playertje onder het poster links

[ Voor 3% gewijzigd door XangadiX op 29-05-2004 00:32 ]

Stoer; Marduq

Pagina: 1