-void
-FilmEditor::setup_streams ()
-{
- if (!_film) {
- return;
- }
-
- _ffmpeg_audio_stream->Clear ();
- vector<FFmpegAudioStream> a = _film->ffmpeg_audio_streams ();
- for (vector<FFmpegAudioStream>::iterator i = a.begin(); i != a.end(); ++i) {
- _ffmpeg_audio_stream->Append (std_to_wx (i->name), new wxStringClientData (std_to_wx (boost::lexical_cast<string> (i->id))));
- }
-
- if (_film->ffmpeg_audio_stream()) {
- checked_set (_ffmpeg_audio_stream, boost::lexical_cast<string> (_film->ffmpeg_audio_stream()->id));
- }
-
- _ffmpeg_subtitle_stream->Clear ();
- vector<FFmpegSubtitleStream> s = _film->ffmpeg_subtitle_streams ();
- for (vector<FFmpegSubtitleStream>::iterator i = s.begin(); i != s.end(); ++i) {
- _ffmpeg_subtitle_stream->Append (std_to_wx (i->name), new wxStringClientData (std_to_wx (boost::lexical_cast<string> (i->id))));
- }
-
- if (_film->ffmpeg_subtitle_stream()) {
- checked_set (_ffmpeg_subtitle_stream, boost::lexical_cast<string> (_film->ffmpeg_subtitle_stream()->id));
- } else {
- _ffmpeg_subtitle_stream->SetSelection (wxNOT_FOUND);
- }
-}
-
-void
-FilmEditor::ffmpeg_audio_stream_changed (wxCommandEvent &)
-{
- if (!_film) {
- return;
- }
-
- vector<FFmpegAudioStream> a = _film->ffmpeg_audio_streams ();
- vector<FFmpegAudioStream>::iterator i = a.begin ();
- string const s = string_client_data (_ffmpeg_audio_stream->GetClientObject (_ffmpeg_audio_stream->GetSelection ()));
- while (i != a.end() && lexical_cast<string> (i->id) != s) {
- ++i;
- }
-
- if (i != a.end ()) {
- _film->set_ffmpeg_audio_stream (*i);
- }
-}
-
-void
-FilmEditor::ffmpeg_subtitle_stream_changed (wxCommandEvent &)
-{
- if (!_film) {
- return;
- }
-
- vector<FFmpegSubtitleStream> a = _film->ffmpeg_subtitle_streams ();
- vector<FFmpegSubtitleStream>::iterator i = a.begin ();
- string const s = string_client_data (_ffmpeg_subtitle_stream->GetClientObject (_ffmpeg_subtitle_stream->GetSelection ()));
- while (i != a.end() && lexical_cast<string> (i->id) != s) {
- ++i;
- }
-
- if (i != a.end ()) {
- _film->set_ffmpeg_subtitle_stream (*i);
- }
-}
-
-void
-FilmEditor::setup_audio_details ()
-{
- if (!_film->ffmpeg_audio_stream()) {
- _audio->SetLabel (wxT (""));
- } else {
- wxString s;
- if (_film->audio_channels() == 1) {
- s << _("1 channel");
- } else {
- s << _film->audio_channels() << wxT (" ") << _("channels");
- }
- s << wxT (", ") << _film->audio_frame_rate() << _("Hz");
- _audio->SetLabel (s);
- }
-
- setup_notebook_size ();
-}
-