下記手順でアセットバンドルを作成したのですが、
CreateFormFileを使用してLoadする方法がわかりません。

●アセットバンドル作成側
1.新しくシーンを作成しCameraの下にCanvasを作り、Canvasの下にButtonを作成しました。
2.Canvas以下をプレハブとし、そのPrefabにInspector上でAssetBandleの名前をtestcanvas
 としました。
3.

    BuildPipeline.BuildAssetBundles("Assets/BundleOutPut/");

 メソッドにてアセットバンドルを作成し、
 Assets/BundleOutPut/ の下に下記4つのファイルができました。
 BundleOutPut
 BundleOutPut.manifest
 testcanvas
 testcanvas.manifest

●アセットバンドルロード側
作成したBundleOutPutをAssetsの下のStreamingAssetsに置き
下記のソースでロードしてみたのですがエラーメッセージが表示されます。

    public void CreateFileAssetBundleFileLoad()
    {
    string path = "file://" + Application.streamingAssetsPath + "/" 
    + "BundleOutPut";
    AssetBundle NoCompress = AssetBundle.CreateFromFile(path);
    Instantiate(NoCompress.mainAsset);
    }

エラーメッセージ:Error while reading AssetBundle header!
エラーメッセージ:NullReferenceException: Object reference not set to an instance of an object

●質問
・Unity4.xと違い拡張子がUnity3dではないアセットバンドルが作成されるのですが、
 Unity5からは拡張子がUnity3dでなくてもロードできるのでしょうか?
・AssetBundle.CreateFromFile(path)でロードする時に必要なファイルは
 manifestが拡張子についていない側をパス付きでロードすれば良いでしょうか?

 AssetBundle自体はmanifestではない方に入っていると認識しています。