projects
/
goodguy
/
history.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fix drag handle segv, new app icons
[goodguy/history.git]
/
cinelerra-5.1
/
cinelerra
/
fileogg.C
diff --git
a/cinelerra-5.1/cinelerra/fileogg.C
b/cinelerra-5.1/cinelerra/fileogg.C
index 4f24a88e989702cf7fe398b8f155657d838052c1..99995fe975711988a77aec82167f866e9b3851c2 100644
(file)
--- a/
cinelerra-5.1/cinelerra/fileogg.C
+++ b/
cinelerra-5.1/cinelerra/fileogg.C
@@
-100,10
+100,8
@@
FileOGG::~FileOGG()
}
void FileOGG::get_parameters(BC_WindowBase *parent_window,
}
void FileOGG::get_parameters(BC_WindowBase *parent_window,
- Asset *asset,
- BC_WindowBase* &format_window,
- int audio_options,
- int video_options)
+ Asset *asset, BC_WindowBase* &format_window,
+ int audio_options, int video_options, EDL *edl)
{
if(audio_options)
{
{
if(audio_options)
{
@@
-1501,15
+1499,9
@@
int FileOGG::read_frame(VFrame *frame)
yuv.v += yuv.uv_stride * (yuv.uv_height - 1);
yuv.y_stride = - yuv.y_stride;
yuv.uv_stride = - yuv.uv_stride;*/
yuv.v += yuv.uv_stride * (yuv.uv_height - 1);
yuv.y_stride = - yuv.y_stride;
yuv.uv_stride = - yuv.uv_stride;*/
- VFrame *temp_frame = new VFrame(yuv.y,
- -1,
- 0,
- yuv.u - yuv.y,
- yuv.v - yuv.y,
- - yuv.y_stride,
- yuv.y_height,
- BC_YUV420P,
- - yuv.y_stride);
+ VFrame *temp_frame = new VFrame(yuv.y, -1, 0,
+ yuv.u - yuv.y, yuv.v - yuv.y, - yuv.y_stride,
+ yuv.y_height, BC_YUV420P, - yuv.y_stride);
// copy into temp frame...
BC_CModels::transfer(frame->get_rows(),
// copy into temp frame...
BC_CModels::transfer(frame->get_rows(),
@@
-1959,12
+1951,7
@@
int FileOGG::write_frames_theora(VFrame ***frames, int len, int e_o_s)
if (!temp_frame)
{
if (!temp_frame)
{
- temp_frame = new VFrame (0,
- -1,
- tf->ti.width,
- tf->ti.height,
- BC_YUV420P,
- -1);
+ temp_frame = new VFrame ( tf->ti.width, tf->ti.height, BC_YUV420P, 0);
}
VFrame *frame = frames[0][j];
int in_color_model = frame->get_color_model();
}
VFrame *frame = frames[0][j];
int in_color_model = frame->get_color_model();
@@
-2016,8
+2003,7
@@
OGGConfigAudio::OGGConfigAudio(BC_WindowBase *parent_window, Asset *asset)
: BC_Window(_(PROGRAM_NAME ": Audio Compression"),
parent_window->get_abs_cursor_x(1),
parent_window->get_abs_cursor_y(1),
: BC_Window(_(PROGRAM_NAME ": Audio Compression"),
parent_window->get_abs_cursor_x(1),
parent_window->get_abs_cursor_y(1),
- 350,
- 250)
+ 350, 250)
{
this->parent_window = parent_window;
this->asset = asset;
{
this->parent_window = parent_window;
this->asset = asset;
@@
-2143,8
+2129,7
@@
OGGConfigVideo::OGGConfigVideo(BC_WindowBase *parent_window, Asset *asset)
: BC_Window(_(PROGRAM_NAME ": Video Compression"),
parent_window->get_abs_cursor_x(1),
parent_window->get_abs_cursor_y(1),
: BC_Window(_(PROGRAM_NAME ": Video Compression"),
parent_window->get_abs_cursor_x(1),
parent_window->get_abs_cursor_y(1),
- 450,
- 220)
+ 450, 220)
{
this->parent_window = parent_window;
this->asset = asset;
{
this->parent_window = parent_window;
this->asset = asset;
@@
-2169,18
+2154,10
@@
void OGGConfigVideo::create_objects()
y += 30;
add_subwindow(new BC_Title(x, y, _("Quality:")));
y += 30;
add_subwindow(new BC_Title(x, y, _("Quality:")));
- add_subwindow(new BC_ISlider(x + 80,
- y,
- 0,
- 200,
- 200,
- 0,
- 63,
- asset->theora_quality,
- 0,
- 0,
- &asset->theora_quality));
-
+ add_subwindow(new BC_ISlider(x + 80, y, 0,
+ 200, 200, 0, 63,
+ asset->theora_quality, 0,
+ 0, &asset->theora_quality));
add_subwindow(fixed_quality = new OGGTheoraFixedQuality(x2, y, this));
y += 30;
add_subwindow(fixed_quality = new OGGTheoraFixedQuality(x2, y, this));
y += 30;
@@
-2210,8
+2187,6
@@
void OGGConfigVideo::create_objects()
}
}
-
-
int OGGConfigVideo::close_event()
{
set_done(0);
int OGGConfigVideo::close_event()
{
set_done(0);
@@
-2334,7
+2309,7
@@
PackagingEngineOGG::~PackagingEngineOGG()
delete [] packages;
}
if (default_asset)
delete [] packages;
}
if (default_asset)
- de
lete default_asset
;
+ de
fault_asset->remove_user()
;
}
}
@@
-2379,7
+2354,9
@@
int PackagingEngineOGG::create_packages_single_farm(
if (default_asset->audio_data)
{
packages[local_current_package] = new RenderPackage;
if (default_asset->audio_data)
{
packages[local_current_package] = new RenderPackage;
- sprintf(packages[current_package]->path, "%s.audio", default_asset->path);
+ snprintf(packages[current_package]->path,
+ sizeof(packages[current_package]->path),
+ "%s.audio", default_asset->path);
local_current_package++;
}
local_current_package++;
}
@@
-2499,6
+2476,7
@@
int PackagingEngineOGG::packages_are_done()
if (default_asset->audio_data)
{
audio_asset = new Asset(packages[local_current_package]->path);
if (default_asset->audio_data)
{
audio_asset = new Asset(packages[local_current_package]->path);
+ audio_asset->format = FILE_OGG;
local_current_package++;
audio_file_gen = new File();
local_current_package++;
audio_file_gen = new File();
@@
-2511,6
+2489,7
@@
int PackagingEngineOGG::packages_are_done()
if (default_asset->video_data)
{
video_asset = new Asset(packages[local_current_package]->path);
if (default_asset->video_data)
{
video_asset = new Asset(packages[local_current_package]->path);
+ video_asset->format = FILE_OGG;
local_current_package++;
video_file_gen = new File();
local_current_package++;
video_file_gen = new File();
@@
-2550,8
+2529,9
@@
int PackagingEngineOGG::packages_are_done()
ogg_stream_clear(&video_in_stream);
video_file_gen->close_file();
delete video_file_gen;
ogg_stream_clear(&video_in_stream);
video_file_gen->close_file();
delete video_file_gen;
-
delete video_asset
;
+
if( video_asset ) video_asset->remove_user()
;
video_asset = new Asset(packages[local_current_package]->path);
video_asset = new Asset(packages[local_current_package]->path);
+ video_asset->format = FILE_OGG;
local_current_package++;
video_file_gen = new File();
local_current_package++;
video_file_gen = new File();
@@
-2632,22
+2612,24
@@
int PackagingEngineOGG::packages_are_done()
ogg_stream_clear(&audio_in_stream);
audio_file_gen->close_file();
delete audio_file_gen;
ogg_stream_clear(&audio_in_stream);
audio_file_gen->close_file();
delete audio_file_gen;
- delete audio_asset;
+ if( audio_asset )
+ audio_asset->remove_user();
}
if (default_asset->video_data)
{
ogg_stream_clear(&video_in_stream);
video_file_gen->close_file();
delete video_file_gen;
}
if (default_asset->video_data)
{
ogg_stream_clear(&video_in_stream);
video_file_gen->close_file();
delete video_file_gen;
- delete video_asset;
+ if( video_asset )
+ video_asset->remove_user();
}
output_file_gen->close_file();
delete output_file_gen;
}
output_file_gen->close_file();
delete output_file_gen;
-//
Now delete the temp files
-
for(int i = 0; i < total_packages; i++)
-
unlink(packages[i]->path);
+//
don't delete the temp files, for now
+
//
for(int i = 0; i < total_packages; i++)
+
//
unlink(packages[i]->path);
return 0;
}
return 0;
}