Ardour
9.0-pre0-582-g084a23a80d
export_video_dialog.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2013-2017 Robin Gareus <robin@gareus.org>
3
*
4
* This program is free software; you can redistribute it and/or modify
5
* it under the terms of the GNU General Public License as published by
6
* the Free Software Foundation; either version 2 of the License, or
7
* (at your option) any later version.
8
*
9
* This program is distributed in the hope that it will be useful,
10
* but WITHOUT ANY WARRANTY; without even the implied warranty of
11
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
* GNU General Public License for more details.
13
*
14
* You should have received a copy of the GNU General Public License along
15
* with this program; if not, write to the Free Software Foundation, Inc.,
16
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
17
*/
18
#pragma once
19
20
#include <string>
21
22
#include <
gtkmm/box.h
>
23
#include <
gtkmm/button.h
>
24
#include <
gtkmm/checkbutton.h
>
25
#include <
gtkmm/comboboxtext.h
>
26
#include <
gtkmm/entry.h
>
27
#include <
gtkmm/label.h
>
28
#include <
gtkmm/progressbar.h
>
29
30
#include "
ardour/export_status.h
"
31
#include "
ardour/types.h
"
32
33
#include "
ardour_dialog.h
"
34
#include "
time_selection.h
"
35
#include "
transcode_ffmpeg.h
"
36
44
class
ExportVideoDialog
:
public
ArdourDialog
,
public
PBD::ScopedConnectionList
45
{
46
public
:
47
ExportVideoDialog
();
48
~ExportVideoDialog
();
49
50
std::string
get_exported_filename
()
51
{
52
return
outfn_path_entry
.
get_text
();
53
}
54
55
void
apply_state
(
TimeSelection
& tme,
bool
range);
56
57
XMLNode
&
get_state
()
const
;
58
void
set_state
(
const
XMLNode
&);
59
60
private
:
61
62
void
abort_clicked
();
63
void
launch_export
();
64
void
encode_video
();
65
void
finished
(
int
);
66
67
void
set_original_file_information
();
68
void
update_progress
(
ARDOUR::samplecnt_t
,
ARDOUR::samplecnt_t
);
69
gint
audio_progress_display
();
70
71
void
open_outfn_dialog
();
72
void
open_invid_dialog
();
73
74
bool
_aborted
;
75
bool
_normalize
;
76
77
std::shared_ptr<ARDOUR::ExportStatus>
status
;
78
79
TimeSelection
_export_range
;
80
sigc::connection
_audio_progress_connection
;
81
float
_previous_progress
;
82
TranscodeFfmpeg
*
_transcoder
;
83
std::string
_insnd
;
84
85
Gtk::Label
outfn_path_label
;
86
Gtk::Entry
outfn_path_entry
;
87
Gtk::Button
outfn_browse_button
;
88
Gtk::Label
invid_path_label
;
89
Gtk::Entry
invid_path_entry
;
90
Gtk::Button
invid_browse_button
;
91
Gtk::ComboBoxText
insnd_combo
;
92
Gtk::Button
transcode_button
;
93
94
Gtk::VBox
*
vbox
;
95
Gtk::Button
*
cancel_button
;
96
Gtk::Button
abort_button
;
97
98
Gtk::VBox
*
progress_box
;
99
Gtk::ProgressBar
pbar
;
100
101
Gtk::ComboBoxText
audio_bitrate_combo
;
102
Gtk::ComboBoxText
audio_sample_rate_combo
;
103
104
Gtk::CheckButton
normalize_checkbox
;
105
Gtk::CheckButton
copy_video_codec_checkbox
;
106
Gtk::CheckButton
meta_checkbox
;
107
Gtk::CheckButton
debug_checkbox
;
108
};
109
types.h
ardour_dialog.h
checkbutton.h
ArdourDialog
Definition:
ardour_dialog.h:40
ExportVideoDialog
dialog box and controller for video-file export
Definition:
export_video_dialog.h:45
ExportVideoDialog::outfn_browse_button
Gtk::Button outfn_browse_button
Definition:
export_video_dialog.h:87
ExportVideoDialog::invid_path_label
Gtk::Label invid_path_label
Definition:
export_video_dialog.h:88
ExportVideoDialog::vbox
Gtk::VBox * vbox
Definition:
export_video_dialog.h:94
ExportVideoDialog::ExportVideoDialog
ExportVideoDialog()
ExportVideoDialog::invid_path_entry
Gtk::Entry invid_path_entry
Definition:
export_video_dialog.h:89
ExportVideoDialog::debug_checkbox
Gtk::CheckButton debug_checkbox
Definition:
export_video_dialog.h:107
ExportVideoDialog::abort_button
Gtk::Button abort_button
Definition:
export_video_dialog.h:96
ExportVideoDialog::_insnd
std::string _insnd
Definition:
export_video_dialog.h:83
ExportVideoDialog::_normalize
bool _normalize
Definition:
export_video_dialog.h:75
ExportVideoDialog::meta_checkbox
Gtk::CheckButton meta_checkbox
Definition:
export_video_dialog.h:106
ExportVideoDialog::normalize_checkbox
Gtk::CheckButton normalize_checkbox
Definition:
export_video_dialog.h:104
ExportVideoDialog::open_invid_dialog
void open_invid_dialog()
ExportVideoDialog::set_state
void set_state(const XMLNode &)
ExportVideoDialog::_previous_progress
float _previous_progress
Definition:
export_video_dialog.h:81
ExportVideoDialog::abort_clicked
void abort_clicked()
ExportVideoDialog::set_original_file_information
void set_original_file_information()
ExportVideoDialog::open_outfn_dialog
void open_outfn_dialog()
ExportVideoDialog::get_state
XMLNode & get_state() const
ExportVideoDialog::audio_sample_rate_combo
Gtk::ComboBoxText audio_sample_rate_combo
Definition:
export_video_dialog.h:102
ExportVideoDialog::progress_box
Gtk::VBox * progress_box
Definition:
export_video_dialog.h:98
ExportVideoDialog::audio_bitrate_combo
Gtk::ComboBoxText audio_bitrate_combo
Definition:
export_video_dialog.h:101
ExportVideoDialog::status
std::shared_ptr< ARDOUR::ExportStatus > status
Definition:
export_video_dialog.h:77
ExportVideoDialog::get_exported_filename
std::string get_exported_filename()
Definition:
export_video_dialog.h:50
ExportVideoDialog::~ExportVideoDialog
~ExportVideoDialog()
ExportVideoDialog::_transcoder
TranscodeFfmpeg * _transcoder
Definition:
export_video_dialog.h:82
ExportVideoDialog::copy_video_codec_checkbox
Gtk::CheckButton copy_video_codec_checkbox
Definition:
export_video_dialog.h:105
ExportVideoDialog::insnd_combo
Gtk::ComboBoxText insnd_combo
Definition:
export_video_dialog.h:91
ExportVideoDialog::outfn_path_entry
Gtk::Entry outfn_path_entry
Definition:
export_video_dialog.h:86
ExportVideoDialog::finished
void finished(int)
ExportVideoDialog::_aborted
bool _aborted
Definition:
export_video_dialog.h:74
ExportVideoDialog::outfn_path_label
Gtk::Label outfn_path_label
Definition:
export_video_dialog.h:85
ExportVideoDialog::cancel_button
Gtk::Button * cancel_button
Definition:
export_video_dialog.h:95
ExportVideoDialog::encode_video
void encode_video()
ExportVideoDialog::invid_browse_button
Gtk::Button invid_browse_button
Definition:
export_video_dialog.h:90
ExportVideoDialog::_audio_progress_connection
sigc::connection _audio_progress_connection
Definition:
export_video_dialog.h:80
ExportVideoDialog::apply_state
void apply_state(TimeSelection &tme, bool range)
ExportVideoDialog::transcode_button
Gtk::Button transcode_button
Definition:
export_video_dialog.h:92
ExportVideoDialog::pbar
Gtk::ProgressBar pbar
Definition:
export_video_dialog.h:99
ExportVideoDialog::launch_export
void launch_export()
ExportVideoDialog::audio_progress_display
gint audio_progress_display()
ExportVideoDialog::_export_range
TimeSelection _export_range
Definition:
export_video_dialog.h:79
ExportVideoDialog::update_progress
void update_progress(ARDOUR::samplecnt_t, ARDOUR::samplecnt_t)
Gtk::Button
Definition:
tk/ytkmm/ytkmm/gtkmm/button.h:60
Gtk::CheckButton
Definition:
checkbutton.h:56
Gtk::ComboBoxText
Definition:
comboboxtext.h:55
Gtk::Entry
Definition:
entry.h:101
Gtk::Entry::get_text
Glib::ustring get_text() const
Gtk::Label
Definition:
label.h:55
Gtk::ProgressBar
Definition:
progressbar.h:109
Gtk::VBox
Definition:
tk/ytkmm/ytkmm/gtkmm/box.h:505
PBD::ScopedConnectionList
Definition:
signals.h:269
TimeSelection
Definition:
time_selection.h:30
TranscodeFfmpeg
wrapper around ffmpeg and ffprobe command-line utils
Definition:
transcode_ffmpeg.h:34
XMLNode
Definition:
xml++.h:114
comboboxtext.h
entry.h
export_status.h
label.h
ARDOUR::samplecnt_t
Temporal::samplecnt_t samplecnt_t
Definition:
ardour/ardour/types.h:89
progressbar.h
time_selection.h
box.h
button.h
transcode_ffmpeg.h
gtk2_ardour
export_video_dialog.h
Generated on Wed Dec 25 2024 05:44:14 for Ardour by
1.9.1