Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc
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
Commits
97278aab
Commit
97278aab
authored
Feb 05, 2006
by
Antoine Cellerier
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
sout-standard-url is deprecated
parent
60f67d83
Changes
8
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
75 additions
and
75 deletions
+75
-75
include/vlc_osd.h
include/vlc_osd.h
+59
-59
modules/access_output/shout.c
modules/access_output/shout.c
+1
-1
modules/gui/macosx/output.m
modules/gui/macosx/output.m
+2
-2
modules/gui/macosx/wizard.m
modules/gui/macosx/wizard.m
+3
-3
modules/gui/pda/pda_callbacks.c
modules/gui/pda/pda_callbacks.c
+1
-1
modules/gui/wxwidgets/dialogs/streamout.cpp
modules/gui/wxwidgets/dialogs/streamout.cpp
+5
-5
modules/gui/wxwidgets/dialogs/wizard.cpp
modules/gui/wxwidgets/dialogs/wizard.cpp
+2
-2
src/stream_output/stream_output.c
src/stream_output/stream_output.c
+2
-2
No files found.
include/vlc_osd.h
View file @
97278aab
...
...
@@ -27,36 +27,36 @@
/**
* \file
* The OSD menu core creates the OSD menu structure in memory. It parses a
* configuration file that defines all elements that are part of the menu. The
* core also handles all actions and menu structure updates on behalf of video
* The OSD menu core creates the OSD menu structure in memory. It parses a
* configuration file that defines all elements that are part of the menu. The
* core also handles all actions and menu structure updates on behalf of video
* subpicture filters.
*
* The file modules/video_filters/osdmenu.c implements a subpicture filter that
* specifies the final information on positioning of the current state image.
* specifies the final information on positioning of the current state image.
* A subpicture filter is called each time a video picture has to be rendered, it
* also gives a start and end date to the subpicture. The subpicture can be streamed
* if used inside a transcoding command. For example:
*
* vlc dvdsimple:///dev/dvd --extraintf rc
* --sout='#transcode{osd}:std{access=udp,mux=ts,
url
=dest_ipaddr}'
* --sout='#transcode{osd}:std{access=udp,mux=ts,
dst
=dest_ipaddr}'
* --osdmenu-file=share/osdmenu/dvd.cfg
*
* Each OSD menu element, called "action", defines a hotkey action. Each action
* can have several states (unselect, select, pressed). Each state has an image
* that represents the state visually. The commands "menu right", "menu left",
* Each OSD menu element, called "action", defines a hotkey action. Each action
* can have several states (unselect, select, pressed). Each state has an image
* that represents the state visually. The commands "menu right", "menu left",
* "menu up" and "menu down" are used to navigate through the OSD menu structure.
* The commands "menu on" or "menu show" and "menu off" or "menu hide" respectively
* show and hide the OSD menu subpictures.
*
* There is one special element called "range". A range is an arbritary range
* of state images that can be browsed using "menu up" and "menu down" commands
* on the rc interface.
*
* The OSD menu configuration file uses a very simple syntax and basic parser.
* on the rc interface.
*
* The OSD menu configuration file uses a very simple syntax and basic parser.
* A configuration file has the ".cfg". An example is "share/osdmenu/dvd256.cfg".
*/
#ifndef _VLC_OSD_H
#define _VLC_OSD_H 1
...
...
@@ -73,7 +73,7 @@ extern "C" {
* BNF formal representation below:
*
* The keywords FILENAME and PATHNAME represent the filename and pathname specification
* that is valid for the Operating System VLC is compiled for.
* that is valid for the Operating System VLC is compiled for.
*
* The hotkey actions that are supported by VLC are documented in the file src/libvlc. The
* file include/vlc_keys.h defines some hotkey internals.
...
...
@@ -84,7 +84,7 @@ extern "C" {
* DIR = 'dir' WS OSDMENU_PATH '\n'
* STATE = [ 'unselect' | 'select' | 'pressed' ]
* HOTKEY_ACTION = 'key-' [ 'a' .. 'z', 'A' .. 'Z', '-' ]+
*
*
* ACTION_TYPE = 'type' 'volume' '\n'
* ACTION_BLOCK_START = 'action' WS HOTKEY_ACTION WS '('POS','POS')' '\n'
* ACTION_BLOCK_END = 'end' '\n'
...
...
@@ -97,7 +97,7 @@ extern "C" {
* ACTION_BLOCK = ACTION_BLOCK_START [WS ACTION_TYPE*] [ [WS ACTION_STATE]+3 | [WS ACTION_BLOCK_RANGE]+1 ] ACTION_BLOCK_END
* CONFIG_FILE_CONTENTS = DIR [ACTION_BLOCK]+
*
*/
*/
/**
* OSD menu position and picture type defines
...
...
@@ -129,7 +129,7 @@ struct text_style_t
vlc_bool_t
b_underline
;
};
static
const
text_style_t
default_text_style
=
{
22
,
0xffffff
,
VLC_FALSE
,
VLC_FALSE
,
VLC_FALSE
};
/**
* OSD menu button states
*
...
...
@@ -155,15 +155,15 @@ struct osd_state_t
osd_state_t
*
p_next
;
/*< pointer to next state */
osd_state_t
*
p_prev
;
/*< pointer to previous state */
picture_t
*
p_pic
;
/*< picture of state */
char
*
psz_state
;
/*< state name */
int
i_state
;
/*< state index */
int
i_state
;
/*< state index */
};
/**
/**
* OSD Button object
*
* An OSD Button has different states. Each state has an image for display.
* An OSD Button has different states. Each state has an image for display.
*/
struct
osd_button_t
{
...
...
@@ -171,30 +171,30 @@ struct osd_button_t
osd_button_t
*
p_prev
;
/*< pointer to previous button */
osd_button_t
*
p_up
;
/*< pointer to up button */
osd_button_t
*
p_down
;
/*< pointer to down button */
osd_state_t
*
p_current_state
;
/*< pointer to current state image */
osd_state_t
*
p_states
;
/*< doubly linked list of states */
picture_t
*
p_feedback
;
/*< feedback picture */
char
*
psz_name
;
/*< name of button */
/* These member should probably be a struct hotkey */
char
*
psz_action
;
/*< hotkey action name on button*/
char
*
psz_action_down
;
/*< hotkey action name on range buttons for command "menu down" */
/* end of hotkey specifics */
int
i_x
;
/*< x-position of button visible state image */
int
i_y
;
/*< y-position of button visible state image */
/* range style button */
int
i_y
;
/*< y-position of button visible state image */
/* range style button */
vlc_bool_t
b_range
;
/*< button should be interpreted as range */
int
i_ranges
;
/*< number of states */
};
/**
/**
* OSD Menu State object
*
* Represents the current state as displayed.
* Represents the current state as displayed.
*/
/* Represent the menu state */
struct
osd_menu_state_t
...
...
@@ -202,14 +202,14 @@ struct osd_menu_state_t
int
i_x
;
/*< x position of spu region */
int
i_y
;
/*< y position of spu region */
int
i_width
;
/*< width of spu region */
int
i_height
;
/*< height of spu region */
int
i_height
;
/*< height of spu region */
picture_t
*
p_pic
;
/*< pointer to picture to display */
osd_button_t
*
p_visible
;
/*< shortcut to visible button */
vlc_bool_t
b_menu_visible
;
/*< menu currently visible? */
vlc_bool_t
b_update
;
/*< update OSD Menu when VLC_TRUE */
/* quick hack to volume state. */
osd_button_t
*
p_volume
;
/*< pointer to volume range object. */
};
...
...
@@ -224,16 +224,16 @@ struct osd_menu_state_t
struct
osd_menu_t
{
VLC_COMMON_MEMBERS
int
i_x
;
/*< x-position of OSD Menu on the video screen */
int
i_y
;
/*< y-position of OSD Menu on the video screen */
int
i_width
;
/*< width of OSD Menu on the video screen */
int
i_height
;
/*< height of OSD Menu on the video screen */
int
i_x
;
/*< x-position of OSD Menu on the video screen */
int
i_y
;
/*< y-position of OSD Menu on the video screen */
int
i_width
;
/*< width of OSD Menu on the video screen */
int
i_height
;
/*< height of OSD Menu on the video screen */
char
*
psz_path
;
/*< directory where OSD menu images are stored */
osd_button_t
*
p_button
;
/*< doubly linked list of buttons */
osd_menu_state_t
*
p_state
;
/*< current state of OSD menu */
/* quick link in the linked list. */
osd_button_t
*
p_last_button
;
/*< pointer to last button in the list */
};
...
...
@@ -257,11 +257,11 @@ VLC_EXPORT( void, __osd_MenuDelete, ( vlc_object_t *, osd_menu_t * ) );
/**
* Change state on an osd_button_t.
*
* This function selects the specified state and returns a pointer to it. The
* following states are currently supported:
* This function selects the specified state and returns a pointer to it. The
* following states are currently supported:
* \see OSD_BUTTON_UNSELECT
* \see OSD_BUTTON_SELECT
* \see OSD_BUTTON_PRESSED
* \see OSD_BUTTON_SELECT
* \see OSD_BUTTON_PRESSED
*/
VLC_EXPORT
(
osd_state_t
*
,
__osd_StateChange
,
(
osd_state_t
*
,
const
int
)
);
...
...
@@ -272,11 +272,11 @@ VLC_EXPORT( osd_state_t *, __osd_StateChange, ( osd_state_t *, const int ) );
/**
* Show the OSD menu.
*
* Show the OSD menu on the video output or mux it into the stream.
* Every change to the OSD menu will now be visible in the output. An output
* Show the OSD menu on the video output or mux it into the stream.
* Every change to the OSD menu will now be visible in the output. An output
* can be a video output window or a stream (\see stream output)
*/
VLC_EXPORT
(
void
,
__osd_MenuShow
,
(
vlc_object_t
*
)
);
VLC_EXPORT
(
void
,
__osd_MenuShow
,
(
vlc_object_t
*
)
);
/**
* Hide the OSD menu.
...
...
@@ -289,7 +289,7 @@ VLC_EXPORT( void, __osd_MenuHide, ( vlc_object_t * ) );
* Activate the action of this OSD menu item.
*
* The rc interface command "menu select" triggers the sending of an hotkey action
* to the hotkey interface. The hotkey that belongs to the current highlighted
* to the hotkey interface. The hotkey that belongs to the current highlighted
* OSD menu item will be used.
*/
VLC_EXPORT
(
void
,
__osd_MenuActivate
,
(
vlc_object_t
*
)
);
...
...
@@ -305,7 +305,7 @@ VLC_EXPORT( void, __osd_MenuActivate, ( vlc_object_t * ) );
* Note: The actual position on screen of the menu item is determined by the the
* OSD menu configuration file.
*/
VLC_EXPORT
(
void
,
__osd_MenuNext
,
(
vlc_object_t
*
)
);
VLC_EXPORT
(
void
,
__osd_MenuNext
,
(
vlc_object_t
*
)
);
/**
* Previous OSD menu item
...
...
@@ -319,7 +319,7 @@ VLC_EXPORT( void, __osd_MenuPrev, ( vlc_object_t * ) );
/**
* OSD menu item above
*
* Select the OSD menu item above the current item to be highlighted.
* Select the OSD menu item above the current item to be highlighted.
* Note: The actual position on screen of the menu item is determined by the the
* OSD menu configuration file.
*/
...
...
@@ -366,7 +366,7 @@ static inline const osd_menu_state_t *osd_GetMenuState( osd_menu_t *p_osd )
static
inline
vlc_bool_t
osd_GetKeyPressed
(
osd_menu_t
*
p_osd
)
{
return
(
p_osd
->
p_state
->
b_update
);
}
}
/**
* Set the key pressed to a value.
...
...
@@ -376,9 +376,9 @@ static inline vlc_bool_t osd_GetKeyPressed( osd_menu_t *p_osd )
static
inline
void
osd_SetKeyPressed
(
vlc_object_t
*
p_this
,
int
i_value
)
{
vlc_value_t
val
;
val
.
i_int
=
i_value
;
var_Set
(
p_this
,
"key-pressed"
,
val
);
val
.
i_int
=
i_value
;
var_Set
(
p_this
,
"key-pressed"
,
val
);
}
/**
...
...
@@ -389,8 +389,8 @@ static inline void osd_SetKeyPressed( vlc_object_t *p_this, int i_value )
static
inline
void
osd_SetMenuVisible
(
osd_menu_t
*
p_osd
,
vlc_bool_t
b_value
)
{
vlc_value_t
val
;
val
.
b_bool
=
p_osd
->
p_state
->
b_menu_visible
=
b_value
;
val
.
b_bool
=
p_osd
->
p_state
->
b_menu_visible
=
b_value
;
var_Set
(
p_osd
,
"osd-menu-visible"
,
val
);
}
...
...
@@ -405,7 +405,7 @@ static inline void osd_SetMenuUpdate( osd_menu_t *p_osd, vlc_bool_t b_value )
val
.
b_bool
=
p_osd
->
p_state
->
b_update
=
b_value
;
var_Set
(
p_osd
,
"osd-menu-update"
,
val
);
}
}
/**
* Textual feedback
...
...
@@ -413,7 +413,7 @@ static inline void osd_SetMenuUpdate( osd_menu_t *p_osd, vlc_bool_t b_value )
* Functions that provide the textual feedback on the OSD. They are shown on hotkey commands. The feedback
* is also part of the osd_button_t object. The types are declared in the include file
* include/vlc_osd.h
* @see vlc_osd.h
* @see vlc_osd.h
*/
VLC_EXPORT
(
int
,
osd_ShowTextRelative
,
(
spu_t
*
,
int
,
char
*
,
text_style_t
*
,
int
,
int
,
int
,
mtime_t
)
);
VLC_EXPORT
(
int
,
osd_ShowTextAbsolute
,
(
spu_t
*
,
int
,
char
*
,
text_style_t
*
,
int
,
int
,
int
,
mtime_t
,
mtime_t
)
);
...
...
@@ -425,7 +425,7 @@ VLC_EXPORT( void,osd_Message, ( spu_t *, int, char *, ... ) );
* Functions that provide the default OSD feedback images on hotkey commands. These feedback
* images are also part of the osd_button_t object. The types are declared in the include file
* include/vlc_osd.h
* @see vlc_osd.h
* @see vlc_osd.h
*/
VLC_EXPORT
(
int
,
osd_Slider
,
(
vlc_object_t
*
,
spu_t
*
,
int
,
int
,
int
,
int
,
short
)
);
VLC_EXPORT
(
int
,
osd_Icon
,
(
vlc_object_t
*
,
spu_t
*
,
int
,
int
,
int
,
short
)
);
...
...
modules/access_output/shout.c
View file @
97278aab
...
...
@@ -33,7 +33,7 @@
*
* vlc v4l:/dev/video:input=2:norm=pal:size=192x144 \
* --sout '#transcode{vcodec=theora,vb=300,acodec=vorb,ab=96}\
* :std{access=shout,mux=ogg,
url
=localhost:8005}'
* :std{access=shout,mux=ogg,
dst
=localhost:8005}'
*
*****************************************************************************/
...
...
modules/gui/macosx/output.m
View file @
97278aab
...
...
@@ -384,7 +384,7 @@
else
{
[
o_mrl_string
appendFormat
:
@"std{access=file,mux=%@,
url
=
\"
%@
\"
}"
,
@"std{access=file,mux=%@,
dst
=
\"
%@
\"
}"
,
o_mux_string
,
[
o_file_field
stringValue
]];
}
}
...
...
@@ -442,7 +442,7 @@
}
[
o_mrl_string
appendFormat
:
@"std{access=%@,mux=%@,
url
=%@%@}"
,
@"std{access=%@,mux=%@,
dst
=%@%@}"
,
o_mode
,
o_mux_string
,
o_finalStreamAddress
,
o_announce
];
}
else
...
...
modules/gui/macosx/wizard.m
View file @
97278aab
...
...
@@ -1341,7 +1341,7 @@ static VLCWizard *_o_sharedInstance = nil;
{
/* we are just transcoding and dumping the stuff to a file */
[
o_opts_string
appendFormat
:
\
@":sout=#%s%sstandard{mux=%s,
url
=%s,access=file}"
,
[
o_duplicateCmd
\
@":sout=#%s%sstandard{mux=%s,
dst
=%s,access=file}"
,
[
o_duplicateCmd
\
UTF8String
],
[
o_trnscdCmd
UTF8String
],
[[[
o_encapFormats
\
objectAtIndex
:
[[
o_userSelections
objectForKey
:
@"encapFormat"
]
\
intValue
]]
objectAtIndex
:
0
]
UTF8String
],
[[
o_userSelections
\
...
...
@@ -1362,7 +1362,7 @@ static VLCWizard *_o_sharedInstance = nil;
objectForKey
:
@"sapText"
]
UTF8String
]];
}
[
o_opts_string
appendFormat
:
\
@":sout=#%s%sstandard{mux=%s,
url
=%s,access=%s,%s}"
,
\
@":sout=#%s%sstandard{mux=%s,
dst
=%s,access=%s,%s}"
,
\
[
o_duplicateCmd
UTF8String
],
[
o_trnscdCmd
UTF8String
],
\
[[[
o_encapFormats
objectAtIndex
:
[[
o_userSelections
\
objectForKey
:
@"encapFormat"
]
intValue
]]
objectAtIndex
:
0
]
\
...
...
@@ -1373,7 +1373,7 @@ static VLCWizard *_o_sharedInstance = nil;
}
else
{
/* no SAP, just streaming */
[
o_opts_string
appendFormat
:
\
@":sout=#%s%sstandard{mux=%s,
url
=%s,access=%s}"
,
\
@":sout=#%s%sstandard{mux=%s,
dst
=%s,access=%s}"
,
\
[
o_duplicateCmd
UTF8String
],
[
o_trnscdCmd
UTF8String
],
\
[[[
o_encapFormats
objectAtIndex
:
[[
o_userSelections
\
objectForKey
:
@"encapFormat"
]
intValue
]]
objectAtIndex
:
0
]
\
...
...
modules/gui/pda/pda_callbacks.c
View file @
97278aab
...
...
@@ -1114,7 +1114,7 @@ void onAddTranscodeToPlaylist(GtkButton *button, gpointer user_data)
if
(
i_pos
>=
VLC_MAX_MRL
)
ppsz_options
[
i_options
][
VLC_MAX_MRL
-
1
]
=
'\0'
;
i_pos
+=
snprintf
(
&
ppsz_options
[
i_options
][
i_pos
],
VLC_MAX_MRL
-
i_pos
,
"mux=%s,"
,
(
char
*
)
p_std_muxer
);
if
(
i_pos
>=
VLC_MAX_MRL
)
ppsz_options
[
i_options
][
VLC_MAX_MRL
-
1
]
=
'\0'
;
i_pos
+=
snprintf
(
&
ppsz_options
[
i_options
][
i_pos
],
VLC_MAX_MRL
-
i_pos
,
"
url
=%s"
,
(
char
*
)
p_std_url
);
i_pos
+=
snprintf
(
&
ppsz_options
[
i_options
][
i_pos
],
VLC_MAX_MRL
-
i_pos
,
"
dst
=%s"
,
(
char
*
)
p_std_url
);
if
(
i_pos
>=
VLC_MAX_MRL
)
ppsz_options
[
i_options
][
VLC_MAX_MRL
-
1
]
=
'\0'
;
if
(
strncasecmp
(
(
const
char
*
)
p_std_access
,
"udp"
,
3
)
==
0
)
...
...
modules/gui/wxwidgets/dialogs/streamout.cpp
View file @
97278aab
...
...
@@ -330,14 +330,14 @@ void SoutDialog::UpdateMRL()
{
if
(
!
dup_opts
.
IsEmpty
()
)
dup_opts
+=
wxT
(
","
);
dup_opts
+=
wxT
(
"dst=std{access=file,mux="
);
dup_opts
+=
encapsulation
+
wxT
(
",
url
=
\"
"
);
dup_opts
+=
encapsulation
+
wxT
(
",
dst
=
\"
"
);
dup_opts
+=
file_combo
->
GetValue
()
+
wxT
(
"
\"
}"
);
}
if
(
access_checkboxes
[
HTTP_ACCESS_OUT
]
->
IsChecked
()
)
{
if
(
!
dup_opts
.
IsEmpty
()
)
dup_opts
+=
wxT
(
","
);
dup_opts
+=
wxT
(
"dst=std{access=http,mux="
);
dup_opts
+=
encapsulation
+
wxT
(
",
url
="
);
dup_opts
+=
encapsulation
+
wxT
(
",
dst
="
);
dup_opts
+=
net_addrs
[
HTTP_ACCESS_OUT
]
->
GetLineText
(
0
);
dup_opts
+=
wxString
::
Format
(
wxT
(
":%d"
),
net_ports
[
HTTP_ACCESS_OUT
]
->
GetValue
()
);
...
...
@@ -349,7 +349,7 @@ void SoutDialog::UpdateMRL()
dup_opts
+=
wxT
(
"dst=std{access=mmsh,mux="
);
dup_opts
+=
encapsulation
;
if
(
i_encapsulation_type
==
ASF_ENCAPSULATION
)
dup_opts
+=
wxT
(
"h"
);
dup_opts
+=
wxT
(
",
url
="
);
dup_opts
+=
wxT
(
",
dst
="
);
dup_opts
+=
net_addrs
[
MMSH_ACCESS_OUT
]
->
GetLineText
(
0
);
dup_opts
+=
wxString
::
Format
(
wxT
(
":%d"
),
net_ports
[
MMSH_ACCESS_OUT
]
->
GetValue
()
);
...
...
@@ -359,7 +359,7 @@ void SoutDialog::UpdateMRL()
{
if
(
!
dup_opts
.
IsEmpty
()
)
dup_opts
+=
wxT
(
","
);
dup_opts
+=
wxT
(
"dst=std{access=rtp,mux="
);
dup_opts
+=
encapsulation
+
wxT
(
",
url
="
);
dup_opts
+=
encapsulation
+
wxT
(
",
dst
="
);
wxString
rtp_addr
=
net_addrs
[
RTP_ACCESS_OUT
]
->
GetLineText
(
0
);
if
((
rtp_addr
[
0u
]
!=
'['
)
&&
(
rtp_addr
.
Find
(
':'
)
!=
-
1
))
...
...
@@ -398,7 +398,7 @@ void SoutDialog::UpdateMRL()
{
if
(
!
dup_opts
.
IsEmpty
()
)
dup_opts
+=
wxT
(
","
);
dup_opts
+=
wxT
(
"dst=std{access=udp,mux="
);
dup_opts
+=
encapsulation
+
wxT
(
",
url
="
);
dup_opts
+=
encapsulation
+
wxT
(
",
dst
="
);
wxString
udp_addr
=
net_addrs
[
UDP_ACCESS_OUT
]
->
GetLineText
(
0
);
if
((
udp_addr
[
0u
]
!=
'['
)
&&
(
udp_addr
.
Find
(
':'
)
!=
-
1
))
...
...
modules/gui/wxwidgets/dialogs/wizard.cpp
View file @
97278aab
...
...
@@ -1587,7 +1587,7 @@ void WizardDialog::Run()
else
psz_transcode
=
""
;
asprintf
(
&
psz_opt
,
":sout=#%sstandard{mux=%s,
url
=%s,"
asprintf
(
&
psz_opt
,
":sout=#%sstandard{mux=%s,
dst
=%s,"
"access=file}"
,
psz_transcode
,
mux
,
address
);
if
(
*
psz_transcode
)
...
...
@@ -1615,7 +1615,7 @@ void WizardDialog::Run()
/* Add brackets automatically for IPv6 if they are missing */
v6
=
(
address
[
0
]
!=
'['
)
&&
(
strchr
(
address
,
':'
)
!=
NULL
);
asprintf
(
&
psz_opt
,
":sout=#standard{mux=%s,
url
=%s%s%s,access=%s%s}"
,
":sout=#standard{mux=%s,
dst
=%s%s%s,access=%s%s}"
,
mux
,
v6
?
"["
:
""
,
address
,
v6
?
"]"
:
""
,
method
,
psz_sap_option
?:
""
);
if
(
psz_sap_option
)
free
(
psz_sap_option
);
...
...
src/stream_output/stream_output.c
View file @
97278aab
...
...
@@ -1180,12 +1180,12 @@ static char *_sout_stream_url_to_chain( vlc_object_t *p_this, char *psz_url )
if
(
config_GetInt
(
p_this
,
"sout-display"
)
)
{
p
+=
sprintf
(
p
,
"duplicate{dst=display,dst=std{mux=
\"
%s
\"
,"
"access=
\"
%s
\"
,
url
=
\"
%s
\"
}}"
,
"access=
\"
%s
\"
,
dst
=
\"
%s
\"
}}"
,
mrl
.
psz_way
,
mrl
.
psz_access
,
mrl
.
psz_name
);
}
else
{
p
+=
sprintf
(
p
,
"std{mux=
\"
%s
\"
,access=
\"
%s
\"
,
url
=
\"
%s
\"
}"
,
p
+=
sprintf
(
p
,
"std{mux=
\"
%s
\"
,access=
\"
%s
\"
,
dst
=
\"
%s
\"
}"
,
mrl
.
psz_way
,
mrl
.
psz_access
,
mrl
.
psz_name
);
}
...
...
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