Je bedoelt denk ik een Flash video file? Een Flash file kan immers ook gewoon een animatie zijn.
Ik denk dat je eisen zichzelf wel een beetje tegenspreken. Als je wilt dat het ook bij een langzame verbinding meteen begint te spelen, kun je dus geen hogere data-rate (KB's per seconde) gebruiken dan een langzame internetverbinding aan kan. Maar dat betekent dus meteen dat de kwaliteit niet geweldig zal zijn. Met een langzame verbinding moet je immers ook bij Youtube al wachten tot hij een stuk 'vooruit heeft geladen'. En jij wilt nog een betere kwaliteit.
Wat ik zou aanraden, is de minimale kwaliteit vaststellen die je acceptabel vindt en daarop de film coderen. Daarna zorg je voor een goede inlaad-routine, die inschat wanneer hij moet beginnen te spelen.
Voorbeeld: Als de video 12 minuten duurt en 48 MB groot is, dan is dat dus 4 MB per minuut. Tijdens het laden kun je dan uitrekenen wanneer je moet beginnen met spelen door bij te houden hoe lang je al laadt en hoeveel er al binnen is. Als je ziet dat je na 20 seconden 1 MB hebt geladen, weet je dat het inladen in totaal 48*20 seconden = 16 minuten gaat duren. De film duurt 12 minuten dus je kunt na 4 minuten beginnen af te spelen; de film is dan precies klaar als het laatste stukje geladen is (natuurlijk neem je hierbij wat marge).
Als je de beschikking hebt over Flash server, dan kun je de file in meerdere groottes coderen en Flash kan dan zelf de beste optie kiezen qua bandbreedte. Ook kun je dan 'scrollen' in de film. Normaal kun je alleen het stuk bekijken dat al geladen is. Met Flash server kun je meteen naar een willekeurige plek gaan.