Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc-gpu
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
videolan
vlc-gpu
Commits
3edc65f5
Commit
3edc65f5
authored
May 30, 2004
by
Clément Stenac
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Move streaming data to a separate file (will have to be moved to /include)
parent
c02badf8
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
241 additions
and
177 deletions
+241
-177
modules/gui/wxwindows/playlist.cpp
modules/gui/wxwindows/playlist.cpp
+1
-1
modules/gui/wxwindows/streamdata.h
modules/gui/wxwindows/streamdata.h
+180
-0
modules/gui/wxwindows/streamout.cpp
modules/gui/wxwindows/streamout.cpp
+46
-39
modules/gui/wxwindows/wizard.cpp
modules/gui/wxwindows/wizard.cpp
+14
-137
No files found.
modules/gui/wxwindows/playlist.cpp
View file @
3edc65f5
...
...
@@ -355,8 +355,8 @@ Playlist::Playlist( intf_thread_t *_p_intf, wxWindow *p_parent ):
updown_sizer
->
Add
(
down_button
,
0
,
wxALIGN_LEFT
|
wxLEFT
,
3
);
updown_sizer
->
Layout
();
wxBoxSizer
*
checkbox_sizer
=
new
wxBoxSizer
(
wxHORIZONTAL
);
#if 0
wxBoxSizer *checkbox_sizer = new wxBoxSizer( wxHORIZONTAL );
//checkbox_sizer->Add( random_checkbox, 0,
// wxEXPAND | wxALIGN_RIGHT | wxALL, 5);
//checkbox_sizer->Add( loop_checkbox, 0,
...
...
modules/gui/wxwindows/streamdata.h
0 → 100644
View file @
3edc65f5
/*****************************************************************************
* streamdata.h: streaming/transcoding data
*****************************************************************************
* Copyright (C) 2000-2004 VideoLAN
* $Id: wizard.cpp 7826 2004-05-30 14:43:12Z zorglub $
*
* Authors: Clment Stenac <zorglub@videolan.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.
*****************************************************************************/
#define MUX_PS 0
#define MUX_TS 1
#define MUX_MPEG 2
#define MUX_OGG 3
#define MUX_RAW 4
#define MUX_ASF 5
#define MUX_AVI 6
#define MUX_MP4 7
#define MUX_MOV 8
/* Muxer / Codecs / Access_out compatibility tables */
struct
codec
{
char
*
psz_display
;
char
*
psz_codec
;
char
*
psz_descr
;
int
muxers
[
9
];
};
static
struct
codec
vcodecs_array
[]
=
{
{
"MPEG-1 Video"
,
"mp1v"
,
"MPEG-1 Video codec"
,
{
MUX_PS
,
MUX_TS
,
MUX_MPEG
,
MUX_OGG
,
MUX_AVI
,
MUX_RAW
,
-
1
,
-
1
,
-
1
}
},
{
"MPEG-2 Video"
,
"mp2v"
,
"MPEG-2 Video codec"
,
{
MUX_PS
,
MUX_TS
,
MUX_MPEG
,
MUX_OGG
,
MUX_AVI
,
MUX_RAW
,
-
1
,
-
1
,
-
1
}
},
{
"MPEG-4 Video"
,
"mp4v"
,
"MPEG-4 Video codec"
,
{
MUX_PS
,
MUX_TS
,
MUX_MPEG
,
MUX_ASF
,
MUX_MP4
,
MUX_OGG
,
MUX_AVI
,
MUX_RAW
,
-
1
}
},
{
"DIVX 1"
,
"DIV1"
,
"Divx first version"
,
{
MUX_TS
,
MUX_MPEG
,
MUX_ASF
,
MUX_OGG
,
MUX_AVI
,
-
1
,
-
1
,
-
1
,
-
1
}
},
{
"DIVX 2"
,
"DIV2"
,
"Divx second version"
,
{
MUX_TS
,
MUX_MPEG
,
MUX_ASF
,
MUX_OGG
,
MUX_AVI
,
-
1
,
-
1
,
-
1
,
-
1
}
},
{
"DIVX 3"
,
"DIV3"
,
"Divx third version"
,
{
MUX_TS
,
MUX_MPEG
,
MUX_ASF
,
MUX_OGG
,
MUX_AVI
,
-
1
,
-
1
,
-
1
,
-
1
}
},
{
"H 263"
,
"H263"
,
"H263 is ..."
,
{
MUX_TS
,
MUX_AVI
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
}
},
{
"I 263"
,
"I263"
,
"I263 is ..."
,
{
MUX_TS
,
MUX_AVI
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
}
},
{
"WMV 1"
,
"WMV1"
,
"First version of WMV"
,
{
MUX_TS
,
MUX_MPEG
,
MUX_ASF
,
MUX_OGG
,
MUX_AVI
,
-
1
,
-
1
,
-
1
,
-
1
}
},
{
"WMV 2"
,
"WMV2"
,
"2 version of WMV"
,
{
MUX_TS
,
MUX_MPEG
,
MUX_ASF
,
MUX_OGG
,
MUX_AVI
,
-
1
,
-
1
,
-
1
,
-
1
}
},
{
"MJPEG"
,
"MJPG"
,
"MJPEG consists of a series of JPEG pictures"
,
{
MUX_TS
,
MUX_MPEG
,
MUX_ASF
,
MUX_OGG
,
MUX_AVI
,
-
1
,
-
1
,
-
1
,
-
1
}
},
{
"Theora"
,
"theo"
,
"Experimental free codec"
,
{
MUX_TS
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
}
},
{
"Dummy"
,
"dummy"
,
"Dummy codec (do not transcode)"
,
{
MUX_PS
,
MUX_TS
,
MUX_MPEG
,
MUX_ASF
,
MUX_MP4
,
MUX_OGG
,
MUX_AVI
,
MUX_RAW
,
MUX_MOV
}},
{
NULL
,
NULL
,
NULL
,
{
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
}}
/* Do not remove me */
};
static
struct
codec
acodecs_array
[]
=
{
{
"MPEG Audio"
,
"mpga"
,
"The standard MPEG audio (1/2) format"
,
{
MUX_PS
,
MUX_TS
,
MUX_MPEG
,
MUX_ASF
,
MUX_OGG
,
MUX_AVI
,
MUX_RAW
,
-
1
,
-
1
}
},
{
"MP3"
,
"mp3"
,
"MPEG Audio Layer 3"
,
{
MUX_PS
,
MUX_TS
,
MUX_MPEG
,
MUX_ASF
,
MUX_OGG
,
MUX_AVI
,
MUX_RAW
,
-
1
,
-
1
}
},
{
"MPEG 4 Audio"
,
"mp4a"
,
"Audio format for MPEG4"
,
{
MUX_TS
,
MUX_MP4
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
}
},
{
"A/52"
,
"a52"
,
"DVD audio format"
,
{
MUX_PS
,
MUX_TS
,
MUX_MPEG
,
MUX_ASF
,
MUX_OGG
,
MUX_AVI
,
MUX_RAW
,
-
1
,
-
1
}
},
{
"Vorbis"
,
"vorb"
,
"This is a free audio codec"
,
{
MUX_OGG
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
}
},
{
"FLAC"
,
"flac"
,
"This is an audio codec"
,
{
MUX_OGG
,
MUX_RAW
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
}
},
{
"Speex"
,
"spx"
,
"An audio codec dedicated to compression of voice"
,
{
MUX_OGG
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
}
},
{
"Dummy"
,
"dummy"
,
"Dummy codec (do not transcode)"
,
{
MUX_PS
,
MUX_TS
,
MUX_MPEG
,
MUX_ASF
,
MUX_MP4
,
MUX_OGG
,
MUX_AVI
,
MUX_RAW
,
MUX_MOV
}},
{
NULL
,
NULL
,
NULL
,
{
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
}}
/* Do not remove me */
};
struct
method
{
char
*
psz_access
;
char
*
psz_method
;
char
*
psz_descr
;
char
*
psz_address
;
int
muxers
[
9
];
};
static
struct
method
methods_array
[]
=
{
{
"udp:"
,
"UDP Unicast"
,
"Use this to stream to a single computer"
,
"Enter the address of the computer to stream to"
,
{
MUX_TS
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
}
},
{
"udp:"
,
"UDP Multicast"
,
"Use this to stream to a dynamic group of computers on a "
"multicast-enabled network. This is the most efficient method "
"to stream to several computers, but it does not work over Internet."
,
"Enter the multicast address to stream to in this field. "
"This must be an IP address between 224.0.0.0 an 239.255.255.255 "
"For a private use, enter an address beginning with 239.255."
,
{
MUX_TS
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
}
},
{
"http://"
,
"HTTP"
,
"Use this to stream to several computers. This method is "
"less efficient, as the server needs to send several times the "
"stream."
,
"Enter the local addresses you want to listen to. Do not enter "
"anything if you want to listen to all adresses or if you don't "
"understand. This is generally the best thing to do. Other computers "
"can then access the stream at http://yourip:8080 by default"
,
{
MUX_TS
,
MUX_PS
,
MUX_MPEG
,
MUX_OGG
,
MUX_RAW
,
MUX_ASF
,
-
1
,
-
1
,
-
1
}
},
{
NULL
,
NULL
,
NULL
,
NULL
,
{
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
}}
/* Do not remove me */
};
struct
encap
{
int
id
;
char
*
psz_mux
;
char
*
psz_encap
;
char
*
psz_descr
;
};
static
struct
encap
encaps_array
[]
=
{
{
MUX_PS
,
"ps"
,
"MPEG PS"
,
"MPEG Program Stream"
},
{
MUX_TS
,
"ts"
,
"MPEG TS"
,
"MPEG Transport Stream"
},
{
MUX_MPEG
,
"ps"
,
"MPEG 1"
,
"MPEG 1 Format"
},
{
MUX_OGG
,
"ogg"
,
"OGG"
,
"OGG"
},
{
MUX_RAW
,
"raw"
,
"RAW"
,
"RAW"
},
{
MUX_ASF
,
"asf"
,
"ASF"
,
"ASF"
},
{
MUX_AVI
,
"avi"
,
"AVI"
,
"AVI"
},
{
MUX_MP4
,
"mp4"
,
"MP4"
,
"MPEG4"
},
{
MUX_MOV
,
"mov"
,
"MOV"
,
"MOV"
},
{
-
1
,
NULL
,
NULL
,
NULL
}
/* Do not remove me */
};
/* Bitrates arrays */
static
const
wxString
vbitrates_array
[]
=
{
wxT
(
"3072"
),
wxT
(
"2048"
),
wxT
(
"1024"
),
wxT
(
"768"
),
wxT
(
"512"
),
wxT
(
"384"
),
wxT
(
"256"
),
wxT
(
"192"
),
wxT
(
"128"
),
wxT
(
"96"
),
wxT
(
"64"
),
wxT
(
"32"
),
wxT
(
"16"
)
};
static
const
wxString
abitrates_array
[]
=
{
wxT
(
"512"
),
wxT
(
"256"
),
wxT
(
"192"
),
wxT
(
"128"
),
wxT
(
"96"
),
wxT
(
"64"
),
wxT
(
"32"
),
wxT
(
"16"
)
};
modules/gui/wxwindows/streamout.cpp
View file @
3edc65f5
...
...
@@ -36,6 +36,8 @@
#include <wx/combobox.h>
#include <wx/statline.h>
#include "streamdata.h"
#ifndef wxRB_SINGLE
# define wxRB_SINGLE 0
#endif
...
...
@@ -624,7 +626,7 @@ wxPanel *SoutDialog::TranscodingPanel( wxWindow* parent )
wxVERTICAL
);
/* Create video transcoding checkox */
static
const
wxString
vcodecs_array
[]
=
static
const
wxString
wx
vcodecs_array
[]
=
{
wxT
(
"mp1v"
),
wxT
(
"mp2v"
),
...
...
@@ -639,32 +641,34 @@ wxPanel *SoutDialog::TranscodingPanel( wxWindow* parent )
wxT
(
"MJPG"
),
wxT
(
"theo"
)
};
/*
static const wxString vbitrates_array[] =
{
wxT
(
"3072"
),
wxT
(
"2048"
),
wxT
(
"1024"
),
wxT
(
"768"
),
wxT
(
"512"
),
wxT
(
"384"
),
wxT
(
"256"
),
wxT
(
"192"
),
wxT
(
"128"
),
wxT
(
"96"
),
wxT
(
"64"
),
wxT
(
"32"
),
wxT
(
"16"
)
wxT("3072"),
wxT("2048"),
wxT("1024"),
wxT("768"),
wxT("512"),
wxT("384"),
wxT("256"),
wxT("192"),
wxT("128"),
wxT("96"),
wxT("64"),
wxT("32"),
wxT("16")
};
*/
static
const
wxString
vscales_array
[]
=
{
wxT
(
"0.25"
),
wxT
(
"0.5"
),
wxT
(
"0.75"
),
wxT
(
"1"
),
wxT
(
"1.25"
),
wxT
(
"1.5"
),
wxT
(
"1.75"
),
wxT
(
"2"
)
wxT
(
"0.25"
),
wxT
(
"0.5"
),
wxT
(
"0.75"
),
wxT
(
"1"
),
wxT
(
"1.25"
),
wxT
(
"1.5"
),
wxT
(
"1.75"
),
wxT
(
"2"
)
};
wxFlexGridSizer
*
video_sizer
=
new
wxFlexGridSizer
(
6
,
1
,
20
);
...
...
@@ -672,8 +676,9 @@ wxPanel *SoutDialog::TranscodingPanel( wxWindow* parent )
new
wxCheckBox
(
panel
,
VideoTranscEnable_Event
,
wxU
(
_
(
"Video codec"
)));
video_codec_combo
=
new
wxComboBox
(
panel
,
VideoTranscCodec_Event
,
wxT
(
""
),
wxPoint
(
20
,
25
),
wxDefaultSize
,
WXSIZEOF
(
vcodecs_array
),
vcodecs_array
,
wxCB_READONLY
);
wxPoint
(
20
,
25
),
wxDefaultSize
,
WXSIZEOF
(
wxvcodecs_array
),
wxvcodecs_array
,
wxCB_READONLY
);
video_codec_combo
->
SetSelection
(
2
);
wxStaticText
*
bitrate_label
=
new
wxStaticText
(
panel
,
-
1
,
wxU
(
_
(
"Bitrate (kb/s)"
)));
...
...
@@ -701,7 +706,7 @@ wxPanel *SoutDialog::TranscodingPanel( wxWindow* parent )
wxEXPAND
|
wxALIGN_RIGHT
|
wxALIGN_CENTER_VERTICAL
);
/* Create audio transcoding checkox */
static
const
wxString
acodecs_array
[]
=
static
const
wxString
wx
acodecs_array
[]
=
{
wxT
(
"mpga"
),
wxT
(
"mp3"
),
...
...
@@ -711,17 +716,6 @@ wxPanel *SoutDialog::TranscodingPanel( wxWindow* parent )
wxT
(
"flac"
),
wxT
(
"spx"
)
};
static
const
wxString
abitrates_array
[]
=
{
wxT
(
"512"
),
wxT
(
"256"
),
wxT
(
"192"
),
wxT
(
"128"
),
wxT
(
"96"
),
wxT
(
"64"
),
wxT
(
"32"
),
wxT
(
"16"
)
};
static
const
wxString
achannels_array
[]
=
{
wxT
(
"1"
),
...
...
@@ -729,14 +723,27 @@ wxPanel *SoutDialog::TranscodingPanel( wxWindow* parent )
wxT
(
"4"
),
wxT
(
"6"
)
};
/*
static const wxString abitrates_array[] =
{
wxT("512"),
wxT("256"),
wxT("192"),
wxT("128"),
wxT("96"),
wxT("64"),
wxT("32"),
wxT("16")
};
*/
wxFlexGridSizer
*
audio_sizer
=
new
wxFlexGridSizer
(
3
,
1
,
20
);
audio_transc_checkbox
=
new
wxCheckBox
(
panel
,
AudioTranscEnable_Event
,
wxU
(
_
(
"Audio codec"
)));
audio_codec_combo
=
new
wxComboBox
(
panel
,
AudioTranscCodec_Event
,
wxT
(
""
),
wxPoint
(
10
,
25
),
wxDefaultSize
,
WXSIZEOF
(
acodecs_array
),
acodecs_array
,
wxCB_READONLY
);
wxPoint
(
10
,
25
),
wxDefaultSize
,
WXSIZEOF
(
wxacodecs_array
),
wxacodecs_array
,
wxCB_READONLY
);
audio_codec_combo
->
SetSelection
(
0
);
#if defined( __WXMSW__ )
wxFlexGridSizer
*
audio_sub_sizer
=
new
wxFlexGridSizer
(
4
,
5
,
20
);
...
...
modules/gui/wxwindows/wizard.cpp
View file @
3edc65f5
...
...
@@ -34,9 +34,9 @@
#include "wxwindows.h"
#include
<wx/statline.h>
#include
"streamdata.h"
#include
"stream.h"
#include
<wx/statline.h>
class
wizHelloPage
;
class
wizInputPage
;
...
...
@@ -73,16 +73,6 @@ enum
#define ACTION_STREAM 0
#define ACTION_TRANSCODE 1
#define MUX_PS 0
#define MUX_TS 1
#define MUX_MPEG 2
#define MUX_OGG 3
#define MUX_RAW 4
#define MUX_ASF 5
#define MUX_AVI 6
#define MUX_MP4 7
#define MUX_MOV 8
BEGIN_EVENT_TABLE
(
WizardDialog
,
wxWizard
)
END_EVENT_TABLE
()
...
...
@@ -168,122 +158,6 @@ END_EVENT_TABLE()
"additionnal parameters for your stream" )
/*****************************************************************************
* Helper structures
*****************************************************************************/
struct
codec
{
char
*
psz_display
;
char
*
psz_codec
;
char
*
psz_descr
;
int
muxers
[
9
];
};
struct
codec
vcodecs_array
[]
=
{
{
"MPEG-1 Video"
,
"mp1v"
,
"MPEG-1 Video codec"
,
{
MUX_PS
,
MUX_TS
,
MUX_MPEG
,
MUX_OGG
,
MUX_AVI
,
MUX_RAW
,
-
1
,
-
1
,
-
1
}
},
{
"MPEG-2 Video"
,
"mp2v"
,
"MPEG-2 Video codec"
,
{
MUX_PS
,
MUX_TS
,
MUX_MPEG
,
MUX_OGG
,
MUX_AVI
,
MUX_RAW
,
-
1
,
-
1
,
-
1
}
},
{
"MPEG-4 Video"
,
"mp4v"
,
"MPEG-4 Video codec"
,
{
MUX_PS
,
MUX_TS
,
MUX_MPEG
,
MUX_ASF
,
MUX_MP4
,
MUX_OGG
,
MUX_AVI
,
MUX_RAW
,
-
1
}
},
{
"DIVX 1"
,
"DIV1"
,
"Divx first version"
,
{
MUX_TS
,
MUX_MPEG
,
MUX_ASF
,
MUX_OGG
,
MUX_AVI
,
-
1
,
-
1
,
-
1
,
-
1
}
},
{
"DIVX 2"
,
"DIV2"
,
"Divx second version"
,
{
MUX_TS
,
MUX_MPEG
,
MUX_ASF
,
MUX_OGG
,
MUX_AVI
,
-
1
,
-
1
,
-
1
,
-
1
}
},
{
"DIVX 3"
,
"DIV3"
,
"Divx third version"
,
{
MUX_TS
,
MUX_MPEG
,
MUX_ASF
,
MUX_OGG
,
MUX_AVI
,
-
1
,
-
1
,
-
1
,
-
1
}
},
{
"H 263"
,
"H263"
,
"H263 is ..."
,
{
MUX_TS
,
MUX_AVI
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
}
},
{
"I 263"
,
"I263"
,
"I263 is ..."
,
{
MUX_TS
,
MUX_AVI
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
}
},
{
"WMV 1"
,
"WMV1"
,
"First version of WMV"
,
{
MUX_TS
,
MUX_MPEG
,
MUX_ASF
,
MUX_OGG
,
MUX_AVI
,
-
1
,
-
1
,
-
1
,
-
1
}
},
{
"WMV 2"
,
"WMV2"
,
"2 version of WMV"
,
{
MUX_TS
,
MUX_MPEG
,
MUX_ASF
,
MUX_OGG
,
MUX_AVI
,
-
1
,
-
1
,
-
1
,
-
1
}
},
{
"MJPEG"
,
"MJPG"
,
"MJPEG consists of a series of JPEG pictures"
,
{
MUX_TS
,
MUX_MPEG
,
MUX_ASF
,
MUX_OGG
,
MUX_AVI
,
-
1
,
-
1
,
-
1
,
-
1
}
},
{
"Theora"
,
"theo"
,
"Experimental free codec"
,
{
MUX_TS
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
}
},
{
"Dummy"
,
"dummy"
,
"Dummy codec (do not transcode)"
,
{
MUX_PS
,
MUX_TS
,
MUX_MPEG
,
MUX_ASF
,
MUX_MP4
,
MUX_OGG
,
MUX_AVI
,
MUX_RAW
,
MUX_MOV
}},
{
NULL
,
NULL
,
NULL
,
{
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
}}
/* Do not remove me */
};
struct
codec
acodecs_array
[]
=
{
{
"MPEG Audio"
,
"mpga"
,
"The standard MPEG audio (1/2) format"
,
{
MUX_PS
,
MUX_TS
,
MUX_MPEG
,
MUX_ASF
,
MUX_OGG
,
MUX_AVI
,
MUX_RAW
,
-
1
,
-
1
}
},
{
"MP3"
,
"mp3"
,
"MPEG Audio Layer 3"
,
{
MUX_PS
,
MUX_TS
,
MUX_MPEG
,
MUX_ASF
,
MUX_OGG
,
MUX_AVI
,
MUX_RAW
,
-
1
,
-
1
}
},
{
"MPEG 4 Audio"
,
"mp4a"
,
"Audio format for MPEG4"
,
{
MUX_TS
,
MUX_MP4
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
}
},
{
"A/52"
,
"a52"
,
"DVD audio format"
,
{
MUX_PS
,
MUX_TS
,
MUX_MPEG
,
MUX_ASF
,
MUX_OGG
,
MUX_AVI
,
MUX_RAW
,
-
1
,
-
1
}
},
{
"Vorbis"
,
"vorb"
,
"This is a free audio codec"
,
{
MUX_OGG
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
}
},
{
"FLAC"
,
"flac"
,
"This is an audio codec"
,
{
MUX_OGG
,
MUX_RAW
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
}
},
{
"Speex"
,
"spx"
,
"An audio codec dedicated to compression of voice"
,
{
MUX_OGG
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
}
},
{
"Dummy"
,
"dummy"
,
"Dummy codec (do not transcode)"
,
{
MUX_PS
,
MUX_TS
,
MUX_MPEG
,
MUX_ASF
,
MUX_MP4
,
MUX_OGG
,
MUX_AVI
,
MUX_RAW
,
MUX_MOV
}},
{
NULL
,
NULL
,
NULL
,
{
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
}}
/* Do not remove me */
};
struct
method
{
char
*
psz_access
;
char
*
psz_method
;
char
*
psz_descr
;
char
*
psz_address
;
int
muxers
[
9
];
};
struct
method
methods_array
[]
=
{
{
"udp:"
,
"UDP Unicast"
,
"Use this to stream to a single computer"
,
"Enter the address of the computer to stream to"
,
{
MUX_TS
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
}
},
{
"udp:"
,
"UDP Multicast"
,
"Use this to stream to a dynamic group of computers on a "
"multicast-enabled network. This is the most efficient method "
"to stream to several computers, but it does not work over Internet."
,
"Enter the multicast address to stream to in this field. "
"This must be an IP address between 224.0.0.0 an 239.255.255.255 "
"For a private use, enter an address beginning with 239.255."
,
{
MUX_TS
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
}
},
{
"http://"
,
"HTTP"
,
"Use this to stream to several computers. This method is "
"less efficient, as the server needs to send several times the "
"stream."
,
"Enter the local addresses you want to listen to. Do not enter "
"anything if you want to listen to all adresses or if you don't "
"understand. This is generally the best thing to do. Other computers "
"can then access the stream at http://yourip:8080 by default"
,
{
MUX_TS
,
MUX_PS
,
MUX_MPEG
,
MUX_OGG
,
MUX_RAW
,
MUX_ASF
,
-
1
,
-
1
,
-
1
}
},
{
NULL
,
NULL
,
NULL
,
NULL
,
{
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
}}
/* Do not remove me */
};
struct
encap
{
int
id
;
char
*
psz_mux
;
char
*
psz_encap
;
char
*
psz_descr
;
};
struct
encap
encaps_array
[]
=
{
{
MUX_PS
,
"ps"
,
"MPEG PS"
,
"MPEG Program Stream"
},
{
MUX_TS
,
"ts"
,
"MPEG TS"
,
"MPEG Transport Stream"
},
{
MUX_MPEG
,
"ps"
,
"MPEG 1"
,
"MPEG 1 Format"
},
{
MUX_OGG
,
"ogg"
,
"OGG"
,
"OGG"
},
{
MUX_RAW
,
"raw"
,
"RAW"
,
"RAW"
},
{
MUX_ASF
,
"asf"
,
"ASF"
,
"ASF"
},
{
MUX_AVI
,
"avi"
,
"AVI"
,
"AVI"
},
{
MUX_MP4
,
"mp4"
,
"MP4"
,
"MPEG4"
},
{
MUX_MOV
,
"mov"
,
"MOV"
,
"MOV"
},
{
-
1
,
NULL
,
NULL
,
NULL
}
/* Do not remove me */
};
/*****************************************************************************
* All the pages of the wizard, declaration
*****************************************************************************/
...
...
@@ -521,7 +395,10 @@ END_EVENT_TABLE()
static
int
ismult
(
char
*
psz_uri
);
static
void
pageHeader
(
wxWindow
*
window
,
wxBoxSizer
*
sizer
,
char
*
psz_title
,
char
*
psz_text
)
char
*
psz_title
,
char
*
psz_text
);
static
void
pageHeader
(
wxWindow
*
window
,
wxBoxSizer
*
sizer
,
char
*
psz_title
,
char
*
psz_text
)
{
wxStaticText
*
wtitle
=
new
wxStaticText
(
window
,
-
1
,
wxU
(
psz_title
)
);
wxFont
font
=
wtitle
->
GetFont
();
...
...
@@ -589,7 +466,7 @@ wizHelloPage::wizHelloPage( wxWizard *parent) : wxWizardPageSimple(parent)
void
wizHelloPage
::
OnMoreInfo
(
wxCommandEvent
&
event
)
{
wxString
msg
;
msg
.
Printf
(
wxString
(
wx
T
(
event
.
GetId
()
==
MoreInfoStreaming_Event
?
msg
.
Printf
(
wxString
(
wx
U
(
event
.
GetId
()
==
MoreInfoStreaming_Event
?
MOREINFO_STREAM
:
MOREINFO_TRANSCODE
)
)
);
wxMessageBox
(
msg
,
wxU
(
_
(
"More information"
)),
...
...
@@ -794,7 +671,7 @@ void wizInputPage::OnWizardPageChanging(wxWizardEvent& event)
}
else
{
p_parent
->
SetMrl
(
(
const
char
*
)
mrl_text
->
GetValue
().
c
_str
()
);
p_parent
->
SetMrl
(
(
const
char
*
)
mrl_text
->
GetValue
().
mb
_str
()
);
}
}
else
...
...
@@ -807,7 +684,7 @@ void wizInputPage::OnWizardPageChanging(wxWizardEvent& event)
listitem
.
SetId
(
i
);
listitem
.
SetColumn
(
1
);
listview
->
GetItem
(
listitem
);
p_parent
->
SetMrl
(
(
const
char
*
)
listitem
.
GetText
().
c
_str
()
);
p_parent
->
SetMrl
(
(
const
char
*
)
listitem
.
GetText
().
mb
_str
()
);
}
}
if
(
enable_checkbox
->
IsChecked
()
)
...
...
@@ -1033,12 +910,12 @@ void wizTranscodeCodecPage::OnWizardPageChanging(wxWizardEvent& event)
audio_combo
->
GetSelection
()
:
i_audio_codec
));
acodec
=
strdup
(
c
->
psz_codec
);
int
vb
=
atoi
(
vb_combo
->
GetValue
().
c
_str
()
);
int
vb
=
atoi
(
vb_combo
->
GetValue
().
mb
_str
()
);
if
(
vb
==
0
)
{
vb
=
1024
;
}
int
ab
=
atoi
(
ab_combo
->
GetValue
().
c
_str
()
);
int
ab
=
atoi
(
ab_combo
->
GetValue
().
mb
_str
()
);
if
(
ab
==
0
)
{
ab
=
192
;
...
...
@@ -1131,7 +1008,7 @@ void wizStreamingMethodPage::OnWizardPageChanging(wxWizardEvent& event)
if
(
!
event
.
GetDirection
()
)
return
;
/* Check valid address */
if
(
i_method
==
1
&&
!
ismult
((
char
*
)
address_txtctrl
->
GetValue
().
c
_str
())
)
if
(
i_method
==
1
&&
!
ismult
((
char
*
)
address_txtctrl
->
GetValue
().
mb
_str
())
)
{
wxMessageBox
(
wxU
(
INVALID_MCAST_ADDRESS
)
,
wxU
(
ERROR_MSG
),
wxICON_WARNING
|
wxOK
,
this
->
p_parent
);
...
...
@@ -1156,7 +1033,7 @@ void wizStreamingMethodPage::OnWizardPageChanging(wxWizardEvent& event)
}
}
p_parent
->
SetStream
(
methods_array
[
i_method
].
psz_access
,
(
char
*
)
address_txtctrl
->
GetValue
().
c
_str
()
);
(
char
*
)
address_txtctrl
->
GetValue
().
mb
_str
()
);
/* Set the action for the muxer page */
((
wizEncapPage
*
)
GetNext
())
->
SetAction
(
p_parent
->
GetAction
()
);
...
...
@@ -1304,7 +1181,7 @@ void wizTranscodeExtraPage::OnSelectFile( wxCommandEvent &event)
if
(
file_dialog
->
GetFilename
().
mb_str
()
)
{
p_parent
->
SetTranscodeOut
(
(
char
*
)
file_dialog
->
GetFilename
().
c
_str
()
);
mb
_str
()
);
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment