Commit ff373bfc authored by Gildas Bazin's avatar Gildas Bazin

* modules/gui/wxwindows/streamout.cpp: clean-up for sap support.
    Added a couple of transcoding codecs (WMV2, MJPG, mp3).
    The output filename is now surrounded by quotes and the MRL is updated correctly on codec change.
* install-win32: start menu shortucts are installed in the "All Users" section.
* configure.ac: added a --with-ffmpeg-mp3lame option for when ffmpeg was compiled with mp3lame support.
parent e25dd097
dnl Autoconf settings for vlc dnl Autoconf settings for vlc
dnl $Id: configure.ac,v 1.23 2003/07/03 19:25:51 garf Exp $ dnl $Id: configure.ac,v 1.24 2003/07/06 16:13:10 gbazin Exp $
AC_INIT(vlc,0.6.0) AC_INIT(vlc,0.6.0)
...@@ -1500,6 +1500,11 @@ AC_ARG_ENABLE(ffmpeg, ...@@ -1500,6 +1500,11 @@ AC_ARG_ENABLE(ffmpeg,
[ --enable-ffmpeg ffmpeg codec (default enabled)]) [ --enable-ffmpeg ffmpeg codec (default enabled)])
if test "${enable_ffmpeg}" != "no" if test "${enable_ffmpeg}" != "no"
then then
AC_ARG_WITH(ffmpeg-mp3lame,
[ --with-ffmpeg-mp3lame if ffmpeg has been compiled with mp3lame support],
[ AX_ADD_LDFLAGS([stream_out_transcode],[-lmp3lame])
AX_ADD_LDFLAGS([ffmpeg],[-lmp3lame]) ])
AC_ARG_WITH(ffmpeg-tree, AC_ARG_WITH(ffmpeg-tree,
[ --with-ffmpeg-tree=PATH ffmpeg tree for static linking]) [ --with-ffmpeg-tree=PATH ffmpeg tree for static linking])
......
...@@ -5,8 +5,10 @@ ...@@ -5,8 +5,10 @@
;;;;;;;;;;;;; ;;;;;;;;;;;;;
; CHANGELOG ; ; CHANGELOG ;
;;;;;;;;;;;;; ;;;;;;;;;;;;;
; modifications by Gildas Bazin <gbazin@netcourrier.com> 01 Mar 2003 ; modifications by Gildas Bazin <gbazin@netcourrier.com> 6 Jul 2003
; . added a shortcut to the faq in the menu. ; . Start menu shortcuts now created in the "All Users" section.
; modifications by Gildas Bazin <gbazin@netcourrier.com> 6 Apr 2003
; . added shortcut to the skins interface, added the default skin.
; modifications by Gildas Bazin <gbazin@netcourrier.com> 26 Feb 2003 ; modifications by Gildas Bazin <gbazin@netcourrier.com> 26 Feb 2003
; . added the locale directory. ; . added the locale directory.
; modifications by Samuel Hocevar <sam@zoy.org> 05 Apr 2002 ; modifications by Samuel Hocevar <sam@zoy.org> 05 Apr 2002
...@@ -33,6 +35,7 @@ Caption "VLC '${VERSION}' for Win32 Setup" ...@@ -33,6 +35,7 @@ Caption "VLC '${VERSION}' for Win32 Setup"
CRCCheck on CRCCheck on
SetShellVarContext all
InstallDir "$PROGRAMFILES\VideoLAN\VLC" InstallDir "$PROGRAMFILES\VideoLAN\VLC"
; check if the program has already been installed, if so, take this dir ; check if the program has already been installed, if so, take this dir
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* streamout.cpp : wxWindows plugin for vlc * streamout.cpp : wxWindows plugin for vlc
***************************************************************************** *****************************************************************************
* Copyright (C) 2000-2001 VideoLAN * Copyright (C) 2000-2001 VideoLAN
* $Id: streamout.cpp,v 1.19 2003/07/04 15:20:49 adn Exp $ * $Id: streamout.cpp,v 1.20 2003/07/06 16:13:11 gbazin Exp $
* *
* Authors: Gildas Bazin <gbazin@netcourrier.com> * Authors: Gildas Bazin <gbazin@netcourrier.com>
* *
...@@ -81,7 +81,7 @@ enum ...@@ -81,7 +81,7 @@ enum
enum enum
{ {
SAP_ANNOUNCE = 0 SAP_MISC = 0
}; };
...@@ -110,7 +110,7 @@ enum ...@@ -110,7 +110,7 @@ enum
VideoTranscEnable_Event, VideoTranscCodec_Event, VideoTranscBitrate_Event, VideoTranscEnable_Event, VideoTranscCodec_Event, VideoTranscBitrate_Event,
AudioTranscEnable_Event, AudioTranscCodec_Event, AudioTranscBitrate_Event, AudioTranscEnable_Event, AudioTranscCodec_Event, AudioTranscBitrate_Event,
SAPType_Event, SAPAddr_Event SAPMisc_Event, SAPAddr_Event
}; };
BEGIN_EVENT_TABLE(SoutDialog, wxDialog) BEGIN_EVENT_TABLE(SoutDialog, wxDialog)
...@@ -150,12 +150,16 @@ BEGIN_EVENT_TABLE(SoutDialog, wxDialog) ...@@ -150,12 +150,16 @@ BEGIN_EVENT_TABLE(SoutDialog, wxDialog)
EVT_CHECKBOX(VideoTranscEnable_Event, SoutDialog::OnTranscodingEnable) EVT_CHECKBOX(VideoTranscEnable_Event, SoutDialog::OnTranscodingEnable)
EVT_CHECKBOX(AudioTranscEnable_Event, SoutDialog::OnTranscodingEnable) EVT_CHECKBOX(AudioTranscEnable_Event, SoutDialog::OnTranscodingEnable)
EVT_COMBOBOX(VideoTranscCodec_Event, SoutDialog::OnTranscodingChange) EVT_COMBOBOX(VideoTranscCodec_Event, SoutDialog::OnTranscodingChange)
EVT_TEXT(VideoTranscCodec_Event, SoutDialog::OnTranscodingChange)
EVT_COMBOBOX(AudioTranscCodec_Event, SoutDialog::OnTranscodingChange) EVT_COMBOBOX(AudioTranscCodec_Event, SoutDialog::OnTranscodingChange)
EVT_TEXT(AudioTranscCodec_Event, SoutDialog::OnTranscodingChange)
EVT_COMBOBOX(VideoTranscBitrate_Event, SoutDialog::OnTranscodingChange) EVT_COMBOBOX(VideoTranscBitrate_Event, SoutDialog::OnTranscodingChange)
EVT_TEXT(VideoTranscBitrate_Event, SoutDialog::OnTranscodingChange)
EVT_COMBOBOX(AudioTranscBitrate_Event, SoutDialog::OnTranscodingChange) EVT_COMBOBOX(AudioTranscBitrate_Event, SoutDialog::OnTranscodingChange)
EVT_TEXT(AudioTranscBitrate_Event, SoutDialog::OnTranscodingChange)
/* Events generated by the misc panel */ /* Events generated by the misc panel */
EVT_CHECKBOX(SAPType_Event, SoutDialog::OnSAPTypeChange) EVT_CHECKBOX(SAPMisc_Event, SoutDialog::OnSAPMiscChange)
EVT_TEXT(SAPAddr_Event, SoutDialog::OnSAPAddrChange) EVT_TEXT(SAPAddr_Event, SoutDialog::OnSAPAddrChange)
END_EVENT_TABLE() END_EVENT_TABLE()
...@@ -298,8 +302,8 @@ void SoutDialog::UpdateMRL() ...@@ -298,8 +302,8 @@ void SoutDialog::UpdateMRL()
{ {
if( !dup_opts.IsEmpty() ) dup_opts += wxT(","); if( !dup_opts.IsEmpty() ) dup_opts += wxT(",");
dup_opts += wxT("dst=std{access=file,mux="); dup_opts += wxT("dst=std{access=file,mux=");
dup_opts += encapsulation + wxT(",url="); dup_opts += encapsulation + wxT(",url=\"");
dup_opts += file_combo->GetValue() + wxT("}"); dup_opts += file_combo->GetValue() + wxT("\"}");
} }
if( access_checkboxes[HTTP_ACCESS_OUT]->IsChecked() ) if( access_checkboxes[HTTP_ACCESS_OUT]->IsChecked() )
{ {
...@@ -319,15 +323,15 @@ void SoutDialog::UpdateMRL() ...@@ -319,15 +323,15 @@ void SoutDialog::UpdateMRL()
dup_opts += net_addrs[UDP_ACCESS_OUT]->GetLineText(0); dup_opts += net_addrs[UDP_ACCESS_OUT]->GetLineText(0);
dup_opts += wxString::Format( wxT(":%d"), dup_opts += wxString::Format( wxT(":%d"),
net_ports[UDP_ACCESS_OUT]->GetValue() ); net_ports[UDP_ACCESS_OUT]->GetValue() );
}
if( access_checkboxes[UDP_ACCESS_OUT]->IsChecked() && misc_checkboxes[SAP_ANNOUNCE]->IsChecked() ) /* SAP only if UDP */ /* SAP only if UDP */
if( sap_checkbox->IsChecked() )
{ {
dup_opts += wxT(",sap="); dup_opts += wxT(",sap=");
dup_opts += misc_addrs[SAP_ANNOUNCE]-> GetLineText(0); dup_opts += sap_addr->GetLineText(0);
} }
if( access_checkboxes[UDP_ACCESS_OUT]->IsChecked() )
{ dup_opts += wxT("}");
dup_opts += wxT("}"); /* the bracket must be closed after SAP ! */
} }
if( access_checkboxes[RTP_ACCESS_OUT]->IsChecked() ) if( access_checkboxes[RTP_ACCESS_OUT]->IsChecked() )
{ {
...@@ -471,47 +475,38 @@ wxPanel *SoutDialog::MiscPanel( wxWindow* parent ) ...@@ -471,47 +475,38 @@ wxPanel *SoutDialog::MiscPanel( wxWindow* parent )
wxStaticBoxSizer *panel_sizer = new wxStaticBoxSizer( panel_box, wxStaticBoxSizer *panel_sizer = new wxStaticBoxSizer( panel_box,
wxVERTICAL ); wxVERTICAL );
static const wxString misc_output_array[] =
{
wxU(_("SAP Announce"))
};
misc_checkboxes[SAP_ANNOUNCE] = new wxCheckBox( panel,SAPType_Event,
misc_output_array[SAP_ANNOUNCE] );
misc_subpanels[SAP_ANNOUNCE] = new wxPanel( panel, -1 );
/* SAP Row */ /* SAP Row */
wxStaticText *label; wxStaticText *label;
wxFlexGridSizer *subpanel_sizer; wxFlexGridSizer *subpanel_sizer;
subpanel_sizer = new wxFlexGridSizer( 4, 1, 20 ); misc_subpanels[SAP_MISC] = new wxPanel( panel, -1 );
label = new wxStaticText( misc_subpanels[SAP_ANNOUNCE], -1, wxU(_("Channel Name ")) ); subpanel_sizer = new wxFlexGridSizer( 4, 2, 20 );
misc_addrs[SAP_ANNOUNCE] = new wxTextCtrl( misc_subpanels[SAP_ANNOUNCE],
SAPAddr_Event, sap_checkbox = new wxCheckBox( misc_subpanels[SAP_MISC], SAPMisc_Event,
wxU(_("SAP Announce")) );
label = new wxStaticText( misc_subpanels[SAP_MISC], -1,
wxU(_("Channel Name ")) );
sap_addr = new wxTextCtrl( misc_subpanels[SAP_MISC], SAPAddr_Event,
wxT(""), wxDefaultPosition, wxT(""), wxDefaultPosition,
wxSize( 200, -1 ), wxTE_PROCESS_ENTER); wxSize( 200, -1 ), wxTE_PROCESS_ENTER);
subpanel_sizer->Add( label, 0, subpanel_sizer->Add( sap_checkbox, 0,
wxALIGN_RIGHT | wxALIGN_CENTER_VERTICAL ); wxALIGN_RIGHT | wxALIGN_CENTER_VERTICAL );
subpanel_sizer->Add( misc_addrs[SAP_ANNOUNCE], 1, wxEXPAND | subpanel_sizer->Add( label, 0, wxALIGN_RIGHT | wxALIGN_CENTER_VERTICAL );
subpanel_sizer->Add( sap_addr, 1, wxEXPAND |
wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL ); wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL );
misc_subpanels[SAP_ANNOUNCE]->SetSizerAndFit( subpanel_sizer ); misc_subpanels[SAP_MISC]->SetSizerAndFit( subpanel_sizer );
/* Stuff everything into the main panel */ /* Stuff everything into the main panel */
panel_sizer->Add( misc_subpanels[SAP_MISC], 1,
panel_sizer->Add( misc_checkboxes[SAP_ANNOUNCE], 0,
wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL | wxALL, 5 );
panel_sizer->Add( misc_subpanels[SAP_ANNOUNCE], 1,
wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL | wxALL, 5 ); wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL | wxALL, 5 );
panel->SetSizerAndFit( panel_sizer ); panel->SetSizerAndFit( panel_sizer );
/* Update access type panel */ /* Update misc panel */
misc_subpanels[SAP_MISC]->Disable();
misc_checkboxes[SAP_ANNOUNCE]->Disable(); sap_addr->Disable();
misc_subpanels[SAP_ANNOUNCE]->Disable();
return panel; return panel;
} }
...@@ -576,6 +571,8 @@ wxPanel *SoutDialog::TranscodingPanel( wxWindow* parent ) ...@@ -576,6 +571,8 @@ wxPanel *SoutDialog::TranscodingPanel( wxWindow* parent )
wxT("H263"), wxT("H263"),
wxT("I263"), wxT("I263"),
wxT("WMV1"), wxT("WMV1"),
wxT("WMV2"),
wxT("MJPG")
}; };
static const wxString vbitrates_array[] = static const wxString vbitrates_array[] =
{ {
...@@ -616,6 +613,7 @@ wxPanel *SoutDialog::TranscodingPanel( wxWindow* parent ) ...@@ -616,6 +613,7 @@ wxPanel *SoutDialog::TranscodingPanel( wxWindow* parent )
static const wxString acodecs_array[] = static const wxString acodecs_array[] =
{ {
wxT("mpga"), wxT("mpga"),
wxT("mp3"),
wxT("a52") wxT("a52")
}; };
static const wxString abitrates_array[] = static const wxString abitrates_array[] =
...@@ -701,9 +699,8 @@ void SoutDialog::OnAccessTypeChange( wxCommandEvent& event ) ...@@ -701,9 +699,8 @@ void SoutDialog::OnAccessTypeChange( wxCommandEvent& event )
switch( i_access_type ) switch( i_access_type )
{ {
case UDP_ACCESS_OUT: case UDP_ACCESS_OUT:
{ misc_subpanels[SAP_MISC]->Enable( event.GetInt() );
misc_checkboxes[SAP_ANNOUNCE]->Enable( event.GetInt() );
}
case RTP_ACCESS_OUT: case RTP_ACCESS_OUT:
for( i = 1; i < ENCAPS_NUM; i++ ) for( i = 1; i < ENCAPS_NUM; i++ )
{ {
...@@ -720,13 +717,11 @@ void SoutDialog::OnAccessTypeChange( wxCommandEvent& event ) ...@@ -720,13 +717,11 @@ void SoutDialog::OnAccessTypeChange( wxCommandEvent& event )
} }
/***************************************************************************** /*****************************************************************************
* SAPType panel event methods. * SAPMisc panel event methods.
*****************************************************************************/ *****************************************************************************/
void SoutDialog::OnSAPTypeChange( wxCommandEvent& event ) void SoutDialog::OnSAPMiscChange( wxCommandEvent& event )
{ {
i_sap_type = event.GetId()-SAPType_Event; sap_addr->Enable( event.GetInt() );
misc_subpanels[i_sap_type]->Enable( event.GetInt() );
UpdateMRL(); UpdateMRL();
} }
...@@ -738,7 +733,6 @@ void SoutDialog::OnSAPAddrChange( wxCommandEvent& WXUNUSED(event) ) ...@@ -738,7 +733,6 @@ void SoutDialog::OnSAPAddrChange( wxCommandEvent& WXUNUSED(event) )
UpdateMRL(); UpdateMRL();
} }
/***************************************************************************** /*****************************************************************************
* File access output event methods. * File access output event methods.
*****************************************************************************/ *****************************************************************************/
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* wxwindows.h: private wxWindows interface description * wxwindows.h: private wxWindows interface description
***************************************************************************** *****************************************************************************
* Copyright (C) 1999, 2000 VideoLAN * Copyright (C) 1999, 2000 VideoLAN
* $Id: wxwindows.h,v 1.37 2003/07/04 12:20:32 adn Exp $ * $Id: wxwindows.h,v 1.38 2003/07/06 16:13:11 gbazin Exp $
* *
* Authors: Gildas Bazin <gbazin@netcourrier.com> * Authors: Gildas Bazin <gbazin@netcourrier.com>
* *
...@@ -315,7 +315,6 @@ private: ...@@ -315,7 +315,6 @@ private:
void OnCancel( wxCommandEvent& event ); void OnCancel( wxCommandEvent& event );
void OnMRLChange( wxCommandEvent& event ); void OnMRLChange( wxCommandEvent& event );
void OnAccessTypeChange( wxCommandEvent& event ); void OnAccessTypeChange( wxCommandEvent& event );
void OnSAPTypeChange( wxCommandEvent& event );
/* Event handlers for the file access output */ /* Event handlers for the file access output */
void OnFileChange( wxCommandEvent& event ); void OnFileChange( wxCommandEvent& event );
...@@ -334,6 +333,9 @@ private: ...@@ -334,6 +333,9 @@ private:
void OnTranscodingEnable( wxCommandEvent& event ); void OnTranscodingEnable( wxCommandEvent& event );
void OnTranscodingChange( wxCommandEvent& event ); void OnTranscodingChange( wxCommandEvent& event );
/* Event handlers for the misc panel */
void OnSAPMiscChange( wxCommandEvent& event );
DECLARE_EVENT_TABLE(); DECLARE_EVENT_TABLE();
intf_thread_t *p_intf; intf_thread_t *p_intf;
...@@ -353,11 +355,8 @@ private: ...@@ -353,11 +355,8 @@ private:
/* Controls for the SAP announces */ /* Controls for the SAP announces */
wxPanel *misc_subpanels[1]; wxPanel *misc_subpanels[1];
wxCheckBox *misc_checkboxes[1]; wxCheckBox *sap_checkbox;
wxTextCtrl *sap_addr;
int i_sap_type;
wxTextCtrl *misc_addrs[1];
/* Controls for the encapsulation */ /* Controls for the encapsulation */
wxRadioButton *encapsulation_radios[5]; wxRadioButton *encapsulation_radios[5];
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment