Na některé z otázek znám odpověď, na některé ne, ale dost pravděpodobně bych to vysvětlil absolutně nesrozumitelně (nejsem si v ActionScriptu nijak jistý) tak snad pomůže, když pošlu mé dva zdrojáky na video a audio player - v obou jsou dvě tlačítka start a stop a jeden slider na ovládání zvuku.
Video player (4x akce):
Kód:// Action script... // [onClipEvent of sprite 3 in frame 1] onClipEvent (enterFrame) { _root.videoZvuk.setVolume(_root.volume * 2); } // [Action in Frame 1] var netConn = new NetConnection(); netConn.connect(null); var netStream = new NetStream(netConn); video.attachVideo(netStream); netStream.setBufferTime(5); netStream.play(_root.co); this.createEmptyMovieClip("videoklip", this.getNextHighestDepth()); videoklip.attachAudio(netStream); var videoZvuk = new Sound(videoklip); mySlider.dragger._x = 70; _root.volume = 50; videoZvuk.setVolume(_root.volume * 2); ---------------------------------------- // Action script... // [Action in Frame 1] this.ratio = 0; dragger.onPress = function () { this.startDrag(true, 0, 0, line._width, 0); this.onEnterFrame = function () { ratio = Math.round(this._x * 100 / line._width); _root.volume = ratio; _root.pole = ratio; }; }; dragger.onRelease = dragger.onreleaseOutside = stopDrag; ---------------------------------------- // Action script... on (release) { _root.netStream.close(); _root.netStream.play(_root.co); } ---------------------------------------- // Action script... on (release) { _root.netStream.pause(); _root.netStream.seek(0); }
Audio player (4x akce):
Spouští se z HTML stránky kódem:Kód:// Action script... // [onClipEvent of sprite 3 in frame 1] onClipEvent (load) { mySound = new Sound(); mySound.loadSound(_root.co, true); dragger._x = 70; _root.volume = 50; } onClipEvent (enterFrame) { downloaded = mySound.getBytesLoaded(); total = mySound.getBytesTotal(); if (downloaded != total) { } else { complete = 1; } // end else if mySound.setVolume(_root.volume * 2); } ---------------------------------------- // Action script... // [Action in Frame 1] this.ratio = 0; dragger.onPress = function () { this.startDrag(true, 0, 0, line._width, 0); this.onEnterFrame = function () { ratio = Math.round(this._x * 100 / line._width); _root.volume = ratio; _root.pole = ratio; }; }; dragger.onRelease = dragger.onreleaseOutside = stopDrag; ---------------------------------------- // Action script... on (release) { if (_root.mySlider.complete == 1) { _root.mySlider.mySound.stop(); _root.mySlider.mySound.start(0, 99); } // end if } ---------------------------------------- // Action script... on (release) { _root.mySlider.mySound.stop(); }
A audio/video se do přehrávačů nahrává tímto parametrem (vloženým do tagu embed)Kód:<script type="text/javascript"> function startplaying() { document.getElementById("mediaPlayer").Play(); } </script>
Ze slideru by se mělo dát odvodit vytvoření "sound off" tlačítka, trvalé nastavení by se dalo vyřešit pomocí cookies http://www.permadi.com/tutorial/flashCookie/, pokud jsi ale myslel, aby prostě bylo "sound off" při každé návštěvě, prostě to nastav podobným stylem jako nastavuje zvuk sliderKód:FlashVars="co=media/<?=$r[5];?>".
Video mimo Flash dát jde, pokud si dobře vzpomínám (už je to delší doba co jsem to programoval), dávali jsme ho ve formátu .flv. Stejně tak jde dát ven i audio, to jsme tuším dávali ve formátu .mp3.
Kontrolu, jestli je soubor kompletně načten najdeš u každého přehrávače v první akci, zobrazit v té podmínce nějaký text by už neměl být problém...
Uff... Doufám, že Ti to k něčemu bude a doufám, že to nebylo moc zmateně.






Odpověď s citací