Hi There, I have a problem with the startVideoTexturePlayback() method on iphone - I cant figure out where to put the video file i want to stream. The documentation states:
// Starts up the video texture. filename can be either just the filename (if the video file is in the root of the app bundle)
// or a full path to the file
public static Texture2D startVideoTexturePlayback( string filename, int width, int height, bool shouldLoop )
Can anyone tell me where the the root of the app bundle is? - I have tried alot of locations and file path strings and I dont seem to get it right : ) a short claryfication would be nice, thanks in advance.
/Joe
You’re supposed to put the videos in a folder called StreamingAssets - just add this in the project view as a top leve folder (not parented). The video format should be m4v and all you do is pass the entire name of the file “myvideo.m4v”.
I’m having a bug where by it only plays this one video, and even if I delete the video and confirm its not apart of the project, it still plays that video. I’m trying to find answers to that one.
Ii had the same problem, I could add a new video by changing the file name and adding a new video file.
I had the same problem I had to edit the _arStartVideoTexturePlayBack ARBinding.m :
// video texture methods
void _arStartVideoTexturePlayback( const char * filename, int textureId, bool shouldLoop )
{
NSString *path = GetStringParam( filename );
NSString *auxPath;
// if the url starts with '/' then use it directly else get the bundle path
if( ![[path substringToIndex:1] isEqualToString:@"/"] )
{
//I've added this variable so 'path' does not get destroyed if it is not found
auxPath = [[NSBundle mainBundle] pathForResource:path ofType:nil];
// if we still dont have a valid path, check the StreamingAssets folder
if( !auxPath )
auxPath = [[NSBundle mainBundle] pathForResource:path ofType:nil inDirectory:@"Data/Raw"];
}
if( !auxPath || ![[NSFileManager defaultManager] fileExistsAtPath:auxPath] )
{
NSLog( @"could not find video file! Please make sure your video file is either in the app bundle or in the StreamingAssets folder" );
return;
}
path=auxPath;
[VideoTextureManager sharedManager].textureId = (GLuint)textureId;
[VideoTextureManager sharedManager].loop = shouldLoop;
[[VideoTextureManager sharedManager] startPlayback:path];
}