projects
/
goodguy
/
cinelerra.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
add wheel/gradical to vectorscope, tweak boxblur layout, chromakey booby fix
[goodguy/cinelerra.git]
/
cinelerra-5.1
/
cinelerra
/
indexfile.C
diff --git
a/cinelerra-5.1/cinelerra/indexfile.C
b/cinelerra-5.1/cinelerra/indexfile.C
index 7bbd295586bedb4c85f0f2b897df5f9054e89c35..e73a87100a8fa56cd769ffc28807e3c2eeec60c0 100644
(file)
--- a/
cinelerra-5.1/cinelerra/indexfile.C
+++ b/
cinelerra-5.1/cinelerra/indexfile.C
@@
-70,19
+70,22
@@
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <sys/stat.h>
+#ifdef HAVE_ISOFS
#include <linux/iso_fs.h>
#include <linux/iso_fs.h>
+#endif
// check for isofs volume_id for dvd/cdrom
static int udf_volume_id(const char *path, char *fname)
{
// check for isofs volume_id for dvd/cdrom
static int udf_volume_id(const char *path, char *fname)
{
+ int result = 1;
+#ifdef HAVE_ISOFS
struct stat st;
if( stat(path,&st) ) return 1;
// search mounted devices
FILE *fp = fopen("/proc/mounts","r");
if( !fp ) return 1;
struct stat st;
if( stat(path,&st) ) return 1;
// search mounted devices
FILE *fp = fopen("/proc/mounts","r");
if( !fp ) return 1;
- int result = 1;
while( result && !feof(fp) && !ferror(fp) ) {
char devpath[BCTEXTLEN], mpath[BCTEXTLEN];
char options[BCTEXTLEN], line[BCTEXTLEN];
while( result && !feof(fp) && !ferror(fp) ) {
char devpath[BCTEXTLEN], mpath[BCTEXTLEN];
char options[BCTEXTLEN], line[BCTEXTLEN];
@@
-122,6
+125,7
@@
static int udf_volume_id(const char *path, char *fname)
}
fclose(fp);
}
fclose(fp);
+#endif
return result;
}
return result;
}
@@
-232,6
+236,15
@@
void IndexFile::delete_index(Preferences *preferences,
remove_file(index_filename);
}
remove_file(index_filename);
}
+void IndexFile::delete_index_files(Preferences *preferences,
+ Indexable *indexable)
+{
+ delete_index(preferences, indexable, ".toc");
+ delete_index(preferences, indexable, ".idx");
+ delete_index(preferences, indexable, ".mkr");
+}
+
+
int IndexFile::open_file()
{
int result = 0;
int IndexFile::open_file()
{
int result = 0;
@@
-328,6
+341,11
@@
int IndexFile::open_source()
FileSystem fs;
asset->index_state->index_bytes = fs.get_size(asset->path);
source_length = source->get_audio_length();
FileSystem fs;
asset->index_state->index_bytes = fs.get_size(asset->path);
source_length = source->get_audio_length();
+ int proxy_scale = asset->proxy_scale;
+ if( proxy_scale > 0 ) {
+ asset->width = asset->actual_width * proxy_scale;
+ asset->height = asset->actual_height * proxy_scale;
+ }
}
}
else
}
}
else
@@
-772,7
+790,7
@@
SET_TRACE
// A different algorithm has to be used if it's 1 sample per pixel and the
// index is used. Now the min and max values are equal so we join the max samples.
if(mwindow->edl->local_session->zoom_sample == 1) {
// A different algorithm has to be used if it's 1 sample per pixel and the
// index is used. Now the min and max values are equal so we join the max samples.
if(mwindow->edl->local_session->zoom_sample == 1) {
- canvas->draw_
line(x2 - 1, prev_y1
, x2, y1, pixmap);
+ canvas->draw_
bline(x2 - 1, !rect_audio ? prev_y1 : center_pixel
, x2, y1, pixmap);
}
else {
// Extend line height if it doesn't connect to previous line
}
else {
// Extend line height if it doesn't connect to previous line
@@
-783,7
+801,7
@@
SET_TRACE
else {
first_frame = 0;
}
else {
first_frame = 0;
}
- canvas->draw_
line(x2, y1, x2, y2
, pixmap);
+ canvas->draw_
bline(x2, y1, x2, !rect_audio ? y2 : center_pixel
, pixmap);
}
prev_y1 = next_y1;
prev_y2 = next_y2;
}
prev_y1 = next_y1;
prev_y2 = next_y2;