Jag hittade ett sätt att skapa ett API för att spela filen direkt från mongoDB GridFS i en HTML-ljudvideobildwidget. Det enda problemet med det är att det använder data som hämtas från mongoDB som en base64-data. Nu diskuteras problemet som jag pratar om i denna länk:
http://davidbcalhoun.com/2011 /when-to-base64-encode-images-and-when-not-to .
Jag hoppas att du tycker att det är användbart innan du bestämmer dig för att använda den lösning jag använder. Min lösning är följande:
$stream = $file->getResource();
$stringcoded = stream_get_contents($stream); //converts the stream to string data
$encoded = base64_encode($stringcoded); //encodes string data to base64
Nu när du har ljud-, video- eller bilddata kodad i base64 behöver du bara eka data i 'src'-delen av html5-widgeten.
Jag fick den här lösningen från en mycket användbar blogg. Om du behöver mer hjälp med det, gå igenom det:
http://www.iandevlin.com /blog/2012/09/html5/html5-media-and-data-uri
Alla förbättrade lösningar på detta problem är mer än välkomna.