Log in

View Full Version : AVC encoding for Flash 9...?


Pages : [1] 2 3

easy2Bcheesy
22nd November 2007, 15:15
Having done a search, it appears that the JW FLV player can run h.264 videos, just so long as the .mp4 extension is changed to .flv (really?).

Well I've tried it and I'm having no luck. I'm thinking that it may be because I encoded to level 4.1 specs.

Any ideas on what kind of encoding profile I can use to produce Flash-compliant h.264 videos?

And any fool-proof ways to try out the content locally? Does JW really work with h.264?

nm
22nd November 2007, 15:47
I'd guess that the version of the Mainconcept H.264 decoder shipped with Flash handles high levels just fine. Do you have the Flash Player 9 update ("Moviestar") (http://labs.adobe.com/technologies/flashplayer9/) installed so that you actually have the decoder available?

Newest JW FLV player versions shouldn't require changing filename extensions.

easy2Bcheesy
22nd November 2007, 18:25
I've just downloaded the latest release candidate and the JW FLV player doesn't want to know. And while your assistance is greatfully appreciated, I really haven't got a clue what to do with any webserver, portable or otherwise!

I don't suppose you could try this (http://216.75.63.164/assassin-test.mp4) .mp4 on your site test? It's all standard aside from using anamorphic pixels.

sillKotscha
22nd November 2007, 18:53
u don't need a server to test it... just dl the player and extract it to somewhere...

inside u will find many files - one of them is video.flv and the other is flvplayer.html.

open flvplayer.html with an editor (e.g. notepad) and search to the line "s1.addVariable("file","video.flv");"

there you replace video.flv with your file, read 'video.mp4' (or in your case = assassin-test.mp4) ...

save the html file and double click it (= open it)...

the 1st example should work now ...

btw - your file plays perfectly :)

PS: that works because in that html file you have relative linking to your file, thus just place a videofile inside it, rename it accordingly in the html file and test it :)

PPS: you will see your file in wrong AR ... that is because you just test the file if it works or not - if you want to have the right AR just change width and height of the player according to your video...

for fullscreen experience for everyone no matter what monitor is used (16:10 or 4:3) just type the flashvars:

s1.addVariable('overstretch','true');

last edit: follow my signature and have a look at my "sourcecode" of my html file

ok - very last edit :)

for easy access here is the short version of my html file...


<title>testing mp4</title>

<script type="text/javascript" src="scripts/swfobject.js"></script>

<script type="text/javascript">

<div class="c5" id="vj">

<strong><a href="http://www.adobe.com/go/getflashplayer"><img src="images/flash.gif" alt="get flash player" width="88" height="31" /></a><br />
to see some nice music videos. Or your browser does not support Javascript (you should enable it, perhaps?)</strong>
</div><script type="text/javascript">

//<![CDATA[

var so = new SWFObject('media/flvplayer.swf','mpl','400','440','9');
so.useExpressInstall('scripts/expressinstall.swf');
so.addParam('allowfullscreen','true');
so.addParam('allowscriptaccess','always');
so.addVariable('displayheight','300');
so.addVariable('file','http://feedbeat.feedbeat.tv/rss/');
so.addVariable('logo','images/watermark.png');
so.addVariable('repeat','list');
so.addVariable('height','440');
so.addVariable('width','400');
so.addVariable('frontcolor','0xADADAD');
so.addVariable('backcolor','0x343434');
so.addVariable('lightcolor','0xA19271');
so.addVariable('screencolor','0x343434');
so.addVariable('thumbsinplaylist','true');
so.addVariable('overstretch','true');
so.addVariable('shuffle','false');
so.addVariable('smoothing','true');
so.addVariable('autostart','true');
so.addVariable('volume','100');
so.write('vj');

//]]>
</script>
</body>
</html>



very, very last edit ;)

those two lines are important...

var so = new SWFObject('media/flvplayer.swf','mpl','400','440','9');

so.useExpressInstall('scripts/expressinstall.swf');

as u should use SWFobject (it is already in your player folder) you can define with the number the minimum flash version your visitors should have installed... just by a number - here 9 - or precise version number...

if a user have a flash version below your defined one, SWFobject will automatically update flash to your defined variable (it asks before doing anything - so it is safe for everyone)... neat isn't it :)

just a proof to believe me your file is working...

http://img3.freeimagehosting.net/uploads/9330d4e6d2.jpg (http://www.freeimagehosting.net/)

easy2Bcheesy
22nd November 2007, 19:24
Yes, the file is encoded 480x360, but is designed to be played back at 640x360. The human eye is far more tolerant of compromises in horizontal resolution vs vertical. Indeed, 360x360 expanded 2:1 widthways looks better.

Thanks a lot for your post but just one thing I don't quite get. When you say "download the player", er, what player? The previous poster has something like 4-5 different versions in his post and I'm assuming you don't mean the JW player as that's a standalone executable.

I'm a complete novice to web coding, as you might have realised by now ;)

sillKotscha
22nd November 2007, 19:29
you don't mean the JW player as that's a standalone executable.

i do ;)

JW FLV PLAYER
(http://www.jeroenwijering.com/?item=JW_FLV_Player)

you have to look for the download link as I will not hotlink...

easy2Bcheesy
22nd November 2007, 19:32
Ok, thanks, I'm checking that out now :)

sillKotscha
22nd November 2007, 19:44
as far as it is about Jeroen's nice player I try to answer every question you have...

I went through a looong learning process (where to place what in my html, which flashvars are usefull, what is it with that SWFobject, etc.) and want to share my experiences now :)

btw, in the zip file of Jeroen's player swfobject.js - as I said - is already included... but that's just the plain js file (btw. u need it for best embedding of any flash object/ javascript and because MS somewhen had to introduce content clicking - u know what I mean when u use MSIS 6/7 and before u can use a flash object u have to click and activate it) ...

here u find the full info about SWFobject (http://blog.deconcept.com/swfobject/)... again there is a download link for it and withing that zip file u will find expressinstall.swf as mentioned earlier...

easy2Bcheesy
22nd November 2007, 19:55
OK... got it working, with just one problem... the anamorphic pixels in the encoding are not being respected and I can't get the full 640x360 from the 480x360 encoding...

Any ideas on whether anamorphic pixels are supported?

sillKotscha
22nd November 2007, 19:57
set so.addVariable('overstretch','fit');

that should do it...

explanation:

overstretch (true,false,fit,none):

Defines how to stretch images/movies to make them fit the display. "true" will stretch them proportionally to fill the display, "false" will stretch them to fit. "fit" will stretch them disproportionally to fit both height and width. "none" will show all items in their original dimensions.

easy2Bcheesy
22nd November 2007, 20:03
Ah OK, now I've got it, many thanks!

Player seems rather choppy compared to viewing the same file in Media Player Classic though. Hopefully they'll optimise it.

One thing I am curious about... is there any reason why this HTML won't stream the MP4 from where I've directly hosted it? It doesn't seem to want to connect.

<html>
<head>


<script type="text/javascript" src="swfobject.js"></script>


</head>
<body>


<h3>single file, with preview image:</h3>


<p id="player1"><a href="http://www.macromedia.com/go/getflashplayer">Get the Flash Player</a> to see this player.</p>
<script type="text/javascript">
var s1 = new SWFObject("flvplayer.swf","single","640","360","9");
s1.addParam("allowfullscreen","true");
s1.addVariable("file","http://216.75.63.164/assassin-test.mp4");
s1.addVariable("image","preview.jpg");
s1.addVariable("overstretch","fit");
s1.addVariable("width","640");
s1.addVariable("height","360");
s1.write("player1");
</script>

</body>
</html>

sillKotscha
22nd November 2007, 20:26
I'm not using your HTML right now, I'm just editing the original file:

<html>
<head>


<script type="text/javascript" src="swfobject.js"></script>


</head>
<body>


<h3>single file, with preview image:</h3>


<p id="player1"><a href="http://www.macromedia.com/go/getflashplayer">Get the Flash Player</a> to see this player.</p>
<script type="text/javascript">
var s1 = new SWFObject("flvplayer.swf","single","640","360","9");
s1.addParam("allowfullscreen","true");
s1.addVariable("file","480x360.mp4");
s1.addVariable("image","preview.jpg");
s1.addVariable("width","640");
s1.addVariable("height","360");
s1.write("player1");
</script>

</body>
</html>

How does overstretch fit into this?

Being that I have no web experience whatsoever, I didn't quite understand your HTML file as I see no reference to .mp4s or .flvs in it...


ok... that will be fun with u :)

SWFObject("flvplayer.swf","single","x","y","9");

is the player itself ...

http://img3.freeimagehosting.net/uploads/2f3b4924e3.jpg (http://www.freeimagehosting.net/)


s1.addVariable("file","480x360.mp4");

is where the file is located - here relative (because ur file is in the folder) or absolute, e.g. as http://domain.com/360x360.mp4

s1.addVariable("image","preview.jpg");

is a preview of your file... without that visitors would only see that "play" symbol but with a preview (a screenshot of your file for example) visitors know what they can expect to see...

s1.addVariable("width","640");

again, that defines the width of the player not the file...

s1.addVariable("height","360");

accordingly...

so... those s1.addVariable("definition","variable");

are called flashvars (flash variables)... that means you can add a new flashvar to it...

I proposed that you should add s1.addVariable('overstretch','false'); to it...

s1 or in my case so are just naming schemes... stick with s1 for the moment... a second player would have s2 and so on...

now to what interests you...

it is displayheight - that means add another flashvar to it...

s1.addVariable('displayheight','x');

when u look at my site u can see that the whole player has dimensions of 400x440 but only a displayheight of 300... thus my videos a re displayed 400x300 and strechted to fit the display area... that makes sense as I have different videos with different resolutions and to show them consistent I have added the flashvar s1.addVariable('overstretch','true');


hope that helped...

easy2Bcheesy
22nd November 2007, 20:35
Yes it did (http://216.75.63.164/flash) :)

sillKotscha
22nd November 2007, 20:44
Any ideas on whether anamorphic pixels are supported?

save that as html and start to grin :)

<html>
<head>


<script type="text/javascript" src="swfobject.js"></script>


</head>
<body>

<h3>single file, with preview image:</h3>


<p id="player1"><a href="http://www.macromedia.com/go/getflashplayer">Get the Flash Player</a> to see this player.</p>
<script type="text/javascript">
var s1 = new SWFObject("flvplayer.swf","single","726","360","9");
s1.addParam("allowfullscreen","true");
s1.addVariable("file","video.mp4");
s1.addVariable('displayheight','360');
s1.addVariable("image","preview.jpg");
s1.addVariable("width","726");
s1.addVariable("height","360");
s1.addVariable('overstretch','fit');
s1.write("player1");
</script>


</body>
</html>

sillKotscha
22nd November 2007, 20:45
ok, u were faster than me :)

but my example has no "play-bar" ... have a look at it...

and I made a preview for u...

http://img3.freeimagehosting.net/uploads/th.a62aa58094.jpg (http://img3.freeimagehosting.net/image.php?a62aa58094.jpg)

save as preview.jpg and replace the one in the folder...

one thing is strange - my player does an anamorphic resize to 726 - that's why I entered 726 and not 640 - in my eyes both look ok?!!

easy2Bcheesy
22nd November 2007, 21:12
One thing I am finding rather strange is that it doesn't work at all in Internet Explorer - loads but doesn't play - but streams fine in Opera. The same thing happens on a colleague's machine and with smok3's example above...

sillKotscha
22nd November 2007, 21:20
for me IE works with your link...

http://img3.freeimagehosting.net/uploads/th.2ea9c2242a.jpg (http://img3.freeimagehosting.net/image.php?2ea9c2242a.jpg)

in what way it doesn't stream... is the player not showing up or the file won't start?

have you installed the latest flash9 plugin as a standalone *.exe ?

I have uploaded it again (http://www.yousendit.com/transfer.php?action=download&ufid=DC809EFA6A41247B) for you...

than there is also a flashplayer activex install *.exe ...

in case you have missed it (http://www.yousendit.com/transfer.php?action=download&ufid=B8212CE05CA488DD)...

easy2Bcheesy
22nd November 2007, 21:26
Yeah I downloaded the standalone *.exe... the player shows up, the data loads, it simply doesn't play. I get the spinning thing in the middle and that's it.

Maybe IE needs the ActiveX control.

sillKotscha
22nd November 2007, 21:32
Maybe IE needs the ActiveX control.

no, that would have been the case if you can't click the play button/ player...

normally that is the purpose of SWFobject but adobe offers that activex install for those who don't want to use SWFobject or UFO (http://www.bobbyvandersluis.com/ufo/)...

than - as I said - the user have to activate content before using/ seeing it... to circumvent that adobe offers that activex thingy...

but as the player is showing everything is alright... i'm still thinking about a solution... u just have to wait :)

hehe, I think IE needs the exact path to the file... so instead of:

s1.addVariable("file","assassin-test.mp4"); try s1.addVariable("file","http://216.75.63.164/flash/assassin-test.mp4");

that should do it...

Edit:

and please add s1.addVariable('displayheight','360'); to your variables... that looks much more cooler ;)

easy2Bcheesy
22nd November 2007, 21:57
Made the changes, IE still hangs... totally black screen, spinning thing in the middle, says it's loaded 100% but doesn't play.

Don't think the path makes any difference as it does load, it just doesn't play.

sillKotscha
22nd November 2007, 22:04
now to some advanced things...

please add the following:

s1.useExpressInstall('expressinstall.swf');

you will find this swf in the folder of SWFobject (http://blog.deconcept.com/swfobject/#download). Place expressinstall.swf in your folder where everything else is...

now - as I said - flash will install automatically if a user doesn't have the right flash version defined by you... as many, many websurfer still have flash 8 installed but for those advanced options of JW Player (fullscreen for example) flash 9 is evident, ergo this expressinstall is very, very usefull...

just test it please - uninstall flash from your pc (http://www.yousendit.com/transfer.php?action=download&ufid=860C6FF56905B0D8)

and re-visit ur flash-example site...

than another usefull flashvar is so.addVariable('smoothing','false');

by default smoothing (= post-processing of the video) is on ... but for low-end pc's it may be a bit cpu intense to smooth the video (especially any h.264 video)...

turning smoothing off will result in more blocks but less power demanding

they are many more variables you could use - the readme (http://www.jeroenwijering.com/extras/readme.html) is a very usefull starting point :)

easy2Bcheesy
22nd November 2007, 22:14
Uninstalling didn't help.

This is what I get:

http://img215.imageshack.us/img215/6858/43482177dc5.th.jpg (http://img215.imageshack.us/my.php?image=43482177dc5.jpg)

EDIT: Now Opera doesn't work either. I think the official installer isn't h.264 ready.

sillKotscha
22nd November 2007, 22:19
Don't think the path makes any difference

true, your example works here with IE

as it does load, it just doesn't play.

not true... as JW Player "loads 100%" forever when it doesn't find anything...

really strange - I have no prob here... that said, u made everything ok and concerning the html code there are no errors...

sillKotscha
22nd November 2007, 22:23
EDIT: Now Opera doesn't work either. I think the official installer isn't h.264 ready.

ok, but we have tracked it down... it must be the flash plugin...

concerning uninstalling... did the auto-install work??

Edit:

dumb me... autoinstall won't work if you have no flash at all installed... to test it the right way you can install flash 7 (http://kb.adobe.com/selfservice/viewContent.do?externalId=tn_14266&sliceId=2) or any version below flash 9 and re-visit your page.

As you defined flash 9 is needed it will auto-update than... sorry.

easy2Bcheesy
22nd November 2007, 22:24
Yeah I got it now. The script to auto-update Flash is nice, but the official update doesn't include h.264 decoding. Manually forcing the Moviestar release candidate to install does the trick :)

sillKotscha
22nd November 2007, 22:45
Manually forcing the Moviestar release candidate to install does the trick :)

how? just by entering the exact version numer 9.0.64.0?

btw, I have uninstalled flash too, to test the auto-update again... nice, now I have flash after reinstalling the plugin but not in IE :D

does it work with your IE now?

if not, try this (http://kb.adobe.com/selfservice/viewContent.do?externalId=kb402435&sliceId=1),for) - this I had to do now to get flash to work in IE again ;)

latest uninstaller for flash (http://kb.adobe.com/selfservice/viewContent.do?externalId=tn_14157&sliceId=1) is here

Edit:

and btw... h.264 encoded video with *.mov extension does also work with this player... ;)

easy2Bcheesy
23rd November 2007, 10:01
Yes it is working with IE. I had to install the specific Moviestar release for ActiveX and Windows linked to on the last page. The auto-update thing doesn't update to the AVC decoding version of the software.

One thing I am noticing is that the video is a little jerky compared to normal playback. My guess is that as posted earlier, something isn't right with the decoder - maybe it is that B-Frames are not working yet. Fingers crossed the final decoder will have these issues sorted out.

Regardless, I'm very happy with the overall quality of the video bearing in mind how tiny the file is. I've got 1:43 of decent-looking video running well in a 640x360 window and the file is 12MB in total. As it's encoded at level 4.1, I might try my luck with a HQ-Insane setting in MeGUI.

Thanks for all the help!

sillKotscha
23rd November 2007, 10:16
jerky playback? hmm, I don't really noticed that...

you could try adding s1.addVariable('smoothing','false'); and see if that changes anything...

concerning levels, adobe says that all levels are supported (http://labs.adobe.com/wiki/index.php/Flash_Player:9:Update:H.264).

but to stay completely safe and to have every video running smooth on nearly every pc I'd stick with MeGui's QT-CE profile...

my last question I must repeat - how did you force the moviestar update? just by entering the exact version numer 9.0.64.0, as you still have simply only '9' defined?!!

@all:

Q: Will Flash Player 9 Update 3 support non-FLV files?

A: Yes, with this update, Flash Player will also support files derived from the standard MPEG-4 container format such as MP4, M4A, MOV, MP4V, 3GP, 3G2 if they contain H.264 video and/or HE-AAC encoded audio.

easy2Bcheesy
23rd November 2007, 21:33
My CPU isn't being stressed by high level clips according to Task Manager, there's definitely something up with the decoder. Smoothing makes no discernable difference.

I wouldn't really want to use the Quicktime profile because it's not using many features of the AVC compressor. I might as well save myself a lot of bother and use WMV.

When I say I forced the update, I mean that I manually downloaded the Moviestar update from the website as linked to on the first page. The auto-update code straight from the page updates you to the current release, not the beta update with AVC support.

By the way, does my video stream OK or is it constantly stop-starting? Is 1mbps too much to effectively stream, I wonder?

sillKotscha
23rd November 2007, 21:42
stop-starting?... no, for me it plays fluently and as I said... I must not be very well trained but in my eyes there is no visible stutter/ jerky playback

xp2400+ / 2gb ram / ati 9600 pro

you could adjust the buffer-level if you think it stop-starts... that might help.

Edit: but pc-specs are not that important - it is more the internet-connection. You have a fast server, I have a fast connection (~ 19.000 kbit/s DSL) ... that's why downloading / playing starts immediatly - at least for me.

Thus, adjusting the buffer-level should really help.

smok3
23rd November 2007, 22:04
nope, i tested various settings, jerky playback is there (i used about 5 different machines for test...)

sillKotscha
23rd November 2007, 22:12
jerky playback, well do you guys mean playing not smooth / sometimes it stutters / not fluently playing back? ...

I believe you both but as I said I don't notice that.

smok3
23rd November 2007, 22:16
yes for: not smooth / sometimes it stutters / not fluently playing back
(i have only ever tested the firefox plugin, maybe the ie version is better?)

easy2Bcheesy
23rd November 2007, 22:27
So long as Adobe are aware of it and are going to fix it, I'm happy... I'm researching Flash AVC now but won't be deploying it for months yet.

Stuttering is identical on both Opera and IE by the way.

I've updated my test site (http://216.75.63.164/flash/) and you can download the new video (HQ-Insane) here (http://216.75.63.164/flash/rr7-480x360.mp4). Put them side by side (I'm using MPC with CoreAVC) and the stuttering is clearly evident. It's a smooth 30fps video but it's not in the browser.

Driving games are the bane of streaming video, but AVC copes very well!

sillKotscha
24th November 2007, 04:15
By the way, does my video stream [...] is [...] constantly stop-starting?

this seems to be an issue related to mp4/mov files...

mov/mp4 files first start playing when they are fully loaded, like you might already know that from some quicktime files (apples trailer for example). The reason for that is the "moov atom" - which is kind of an index of contents within the datastructure of your videofile.

As far as I could read the "moov atom" can be at the end of a file or at the beginning. If it is at the end the drawback is that the whole videofile has to fully load before it starts playing and on the other hand it is not possible to seek into files (no real streaming, just downloading and playing - like youtube and other videohosters at the moment, respectively your h.264 demo-file)

I have found a website (http://h264.code-shop.com/trac) where they try to circumvent that behaviour.

The first issue [Edit by me: fully loaded before playing] is easily overcome by using a smart little tool called qt-faststart which patches the MP4 file and shuffles the headers from the end of the file to the beginning. The file now starts playback immediately, while the rest of the files is downloaded in the background.

the tool they are talking about can be found here: qt-faststart (http://multimedia.cx/eggs/improving-qt-faststart/)

View of ffmpeg's /trunk/tools/qt-faststart.c
(http://svn.mplayerhq.hu/ffmpeg/trunk/tools/qt-faststart.c?view=markup)
as it seems it handles only mov files, respectively mp4 files by quicktime (now it makes sense that I proposed to use MeGui's QT-CE profile - and when I look at the various apple trailers they aren't doing a bad job)

To get around the second issue [Edit by me: seeking] we've written a module for lighttpd. In a similar way as how Pseudo-Streaming is made possible for FLV files, this plugin makes seeking possible for MP4 files.

source as above mentioned: H264 (Pseudo) Streaming (http://h264.code-shop.com/trac) - there everyone can find the download of the "mod_h264_streaming"

but as far as I can see it is only designed for mac/ unix but when reading the blog (http://www.code-shop.com/2007/10/18/h264-pseudo-streaming#comment-42) I found out that Jeroen - the auther of JW Player is already in the process of implementing it :)

my conclusion:

find a way to treat your files with qt-faststart and see if it helps (as jerky playback might come from playing the video and still downloading in the background or do you also see jerky playback when playing the video again? - than the video is already in your browser cache and played back from your HD... btw, is your browser cache big enough?). And while testing we wait for an update of that fantastic player by Jeroen to see pseudo (flv / h.264) streaming implemented - that will be very nice - especially for you, as I saw you want to demonstrate game videos... if all is working well, your visitors can seek through every game video and see if they like the game or not and don't have to wait until the whole video is fully downloaded.

wow, things are getting wild with flash ;)

cheers

Edit: btw, awesome demo - but change the previeeeeeeew :D

smok3
24th November 2007, 09:08
nice, hopefully someone will build win version of lighty with this streaming hack as well soon :) (Jeoren is probably looking for a php version of this hack?)

easy2Bcheesy
24th November 2007, 09:17
The stuttering occurs even when the whole video is fully cached, alas. I'll try the tool out to see if it helps matters.

easy2Bcheesy
24th November 2007, 18:35
I've set up a series of different pages now:

512kbps, 400x224: Click Here (http://216.75.63.164/flash/512kbps)
1mbps, 400x224: Click Here (http://216.75.63.164/flash/1mbps)
1.5mbps, 848x480: Click Here (http://216.75.63.164/flash/1.5mbps)

I'm going to look more into this stuttering problem now because it's killing the quality of my videos, especially on the higher resolutions You can see in the Gran Turismo demo that many frames are being lost, yet they are silky smooth when played back in the media player.

Downloading the whole file and playing it back makes no difference.

Astonishingly I am also seeing the problem (albeit to a lesser extent) on the 512kbps files.

sillKotscha
24th November 2007, 19:13
wow, your videos do really look awesome :)

and as they are so well encoded please add s.addVariable('smoothing','false'); (I forgot that, sorry) - that should give a little speed advantage (I guess not really noticeable but at least a little)

but such high bitrate videos aren't ready for current users at the moment as I guess not many have a 16+ Mbit DSL connection and even with such a connection it's a pita to watch'em (smooth/ jerky free) :D

Edit:

you have a big disadvantage concerning anamorphic videos and the flashvar ('overstretch','fit'); - if you pre-define the dimensions of your player than it is nice as the video fits into these dimensions but when u push the 'fullscreen' button it fits into the display -> wrong AR again ;)

encode them non-anamorphic, pre-define your player dimensions and use than ('overstretch','true'); if you have different resoltutions or ('overstretch','false'); if you have one resolution for all your videos and the corresponding player dimension...

than you have the right AR in your player and in fullscreen :)

smok3
24th November 2007, 19:28
why 16 Mbit? it almost play smooth on my 1 mbit connection.

sillKotscha
24th November 2007, 19:49
does it?, ok fair enough :)

nice, hopefully someone will build win version of lighty with this streaming hack as well soon :) (Jeoren is probably looking for a php version of this hack?)

yeah, that would be cool but when implementing that "hack" it gets into the player and than it doesn't matter what someone uses ... (plain html or php)

smok3
24th November 2007, 20:11
sure, current php streaming of flv files is resource eater compared to lighttpd implementation, but still if you use some hosting you can usually just select apache or apache, so php version will be (more than) usefull there...

easy2Bcheesy
24th November 2007, 20:57
why 16 Mbit? it almost play smooth on my 1 mbit connection.

Sorry I don't understand... if you're talking about the 1.5mbps 480p vids, they're VBR-encoded, so while some stuff doesn't use that much bandwidth (so will stream quicker), other stuff will. Over the course of the video I doubt you're gonna be able to stream it consistently.

I have a 5mbps connection here but I can barely stream the 512kbps vids... great infrastructure we have here.

Are you seeing bad lag on the 480p vids too in terms of dropped frames?

I'll probably turn off full-screen playback completely because scaled video never really looks good blown up to full-screen.

smok3
24th November 2007, 21:57
i was reffering to bandwidth only (not decoding), the 1mbit version stops twice during playback (i imagine increasing buffer to say 15s would cure that - s1.addVariable('bufferlength','15');), 512 play nicely without stoping. 1.5 mbit stops all the time of course...., I think i was looking at wrong version before, sorry.

(it would be helpful if you would post exact command lines or at least profiles used btw).

easy2Bcheesy
25th November 2007, 15:20
I'm using MeGUI's auto-encode feature and specifying a two-pass encode at 1mbps, 512kbps or 1.5mbps. I don't have a specific upper limit, so are you saying that peak bandwidth is actually 16mps?!

I'll see if I can adapt the HQ-Insane profile to limit the spikes.

smok3
25th November 2007, 15:25
you don't have to adapt encoder, just the player setup would need some more prebuffering (maybe), spikes shouldnt be a problem imho (at least not when we are talking about progressive download - they could become problem with real streaming, so unimportant in this case.)

sillKotscha
25th November 2007, 15:36
I'm using MeGUI's auto-encode feature and specifying a two-pass encode at 1mbps, 512kbps or 1.5mbps.

what smok3 is asking for is to enumerate your encoding details behind your examples...

what level is used, bitrate, audio-profile, etc. - simliar like he did on his page...

it is easier for visitors to see what they are capable to play and what not...

and about this "16+Mbit" ...

I was just saying that when I first visited your 1.5MBit (videobitrate) example, it was hard to stream (stutter, etc.) even for my 16MBit DSL connection...

EDIT:

and who knows, maybe adobe is visiting your page and then they can easily see where are the dilemmas with their current h.264 implementation and at what encoding level etc. ;)

easy2Bcheesy
25th November 2007, 15:42
All of my videos are stuttering and dropping frames for me even when the entirety of the video is cached to hard disk. The 1mbps files do it a fair bit, but the 1.5mbps ones playback terribly. It may well be that there's a limit to the peak bandwidth the decoder can handle.

CPU power this end isn't the problem though - I'm running the videos on a mobile Core 2 X7800 @ 2.6GHz.

sillKotscha
4th December 2007, 11:31
Adobe Flash Player v9.0.115.0 Final (http://www.adobe.com/de/products/flashplayer/)

features (http://www.adobe.com/products/flashplayer/productinfo/features/)

katjarella
4th December 2007, 13:18
@sillKotscha
Besser:

1: Load http://flexorg.wip3.adobe.com/189822/flex_sdk_3_189822.zip
2: go flex_sdk_3_189822.zip\runtimes\player\win
* FlashPlayer.exe (Standalone Player)
* Install Flash Player 9 ActiveX.exe
* Install Flash Player 9 Plugin.exe
All Version 9.0.115.0

Grüße.