int File::read_frame(VFrame *frame, int is_thread)
{
const int debug = 0;
-
+//printf("File::read_frame pos=%jd cache=%d 1frame=%d\n",
+// current_frame, use_cache, asset->single_frame);
if( debug ) PRINT_TRACE
//printf("File::read_frame %d\n", __LINE__);
}
-int File::renders_video(Asset *asset)
+int File::renders_video(int format)
{
-//printf("File::supports_video %d\n", format);
- switch( asset->format ) {
+ switch( format ) {
case FILE_OGG:
case FILE_JPEG:
case FILE_JPEG_LIST:
case FILE_TIFF_LIST:
case FILE_VMPEG:
case FILE_RAWDV:
- return 1;
case FILE_FFMPEG:
- return FileFFMPEG::renders_video(asset->fformat);
+ return 1;
}
return 0;
}
+int File::renders_video(Asset *asset)
+{
+ return asset->format == FILE_FFMPEG ?
+ FileFFMPEG::renders_video(asset->fformat) :
+ renders_video(asset->format);
+}
-int File::renders_audio(Asset *asset)
+int File::renders_audio(int format)
{
- switch( asset->format ) {
+ switch( format ) {
case FILE_AC3:
case FILE_FLAC:
case FILE_PCM:
case FILE_AIFF:
case FILE_SND:
case FILE_RAWDV:
- return 1;
case FILE_FFMPEG:
- return FileFFMPEG::renders_audio(asset->fformat);
+ return 1;
}
return 0;
}
+int File::renders_audio(Asset *asset)
+{
+ return asset->format == FILE_FFMPEG ?
+ FileFFMPEG::renders_audio(asset->fformat) :
+ renders_audio(asset->format);
+}
int File::is_image_render(int format)
{