Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc-2-2
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-2-2
Commits
6912d838
Commit
6912d838
authored
Dec 28, 2012
by
Felix Paul Kühne
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
macosx/CAS: implement streaming
minor announcement stuff left to do
parent
c52ba916
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
29 additions
and
12 deletions
+29
-12
modules/gui/macosx/ConvertAndSave.m
modules/gui/macosx/ConvertAndSave.m
+29
-12
No files found.
modules/gui/macosx/ConvertAndSave.m
View file @
6912d838
...
@@ -274,6 +274,8 @@ static VLCConvertAndSave *_o_sharedInstance = nil;
...
@@ -274,6 +274,8 @@ static VLCConvertAndSave *_o_sharedInstance = nil;
-
(
IBAction
)
finalizePanel
:(
id
)
sender
-
(
IBAction
)
finalizePanel
:(
id
)
sender
{
{
// HTTP, TODO: mux checking, since only MPEG PS, MPEG TS, MPEG 1, OGG, RAW and ASF are allowed
playlist_t
*
p_playlist
=
pl_Get
(
VLCIntf
);
playlist_t
*
p_playlist
=
pl_Get
(
VLCIntf
);
input_item_t
*
p_input
=
input_item_New
([
_MRL
UTF8String
],
[[
_dropin_media_lbl
stringValue
]
UTF8String
]);
input_item_t
*
p_input
=
input_item_New
([
_MRL
UTF8String
],
[[
_dropin_media_lbl
stringValue
]
UTF8String
]);
...
@@ -281,6 +283,8 @@ static VLCConvertAndSave *_o_sharedInstance = nil;
...
@@ -281,6 +283,8 @@ static VLCConvertAndSave *_o_sharedInstance = nil;
return
;
return
;
input_item_AddOption
(
p_input
,
[[
self
composedOptions
]
UTF8String
],
VLC_INPUT_OPTION_TRUSTED
);
input_item_AddOption
(
p_input
,
[[
self
composedOptions
]
UTF8String
],
VLC_INPUT_OPTION_TRUSTED
);
if
(
b_streaming
)
input_item_AddOption
(
p_input
,
[[
NSString
stringWithFormat
:
@"ttl=%@"
,
[
_stream_ttl_fld
stringValue
]]
UTF8String
],
VLC_INPUT_OPTION_TRUSTED
);
int
returnValue
;
int
returnValue
;
returnValue
=
playlist_AddInput
(
p_playlist
,
p_input
,
PLAYLIST_STOP
,
PLAYLIST_END
,
true
,
pl_Unlocked
);
returnValue
=
playlist_AddInput
(
p_playlist
,
p_input
,
PLAYLIST_STOP
,
PLAYLIST_END
,
true
,
pl_Unlocked
);
...
@@ -463,14 +467,6 @@ static VLCConvertAndSave *_o_sharedInstance = nil;
...
@@ -463,14 +467,6 @@ static VLCConvertAndSave *_o_sharedInstance = nil;
return
;
return
;
}
}
NSString
*
tmpString
=
[
_stream_address_fld
stringValue
];
if
([[
tmpString
componentsSeparatedByString
:
@":"
]
count
]
!=
5
||
[[
tmpString
componentsSeparatedByString
:
@"."
]
count
]
!=
3
||
!
[
tmpString
isEqualToString
:
@"localhost"
])
{
NSBeginInformationalAlertSheet
(
_NS
(
"Invalid Output Destination"
),
_NS
(
"OK"
),
@""
,
@""
,
_stream_panel
,
nil
,
nil
,
nil
,
nil
,
@"%@"
,
_NS
(
"The entered output destination IP does not appear to be legit."
));
return
;
}
/* store destination for further reference and update UI */
/* store destination for further reference and update UI */
[
self
setOutputDestination
:
[
_stream_address_fld
stringValue
]];
[
self
setOutputDestination
:
[
_stream_address_fld
stringValue
]];
[
self
updateOKButton
];
[
self
updateOKButton
];
...
@@ -872,11 +868,32 @@ static VLCConvertAndSave *_o_sharedInstance = nil;
...
@@ -872,11 +868,32 @@ static VLCConvertAndSave *_o_sharedInstance = nil;
[
composedOptions
appendFormat
:
@",soverlay"
];
[
composedOptions
appendFormat
:
@",soverlay"
];
}
}
if
(
!
b_streaming
)
{
/* file transcoding */
// add muxer
// add muxer
[
composedOptions
appendFormat
:
@"}:standard{mux=%@"
,
[
self
.
currentProfile
objectAtIndex
:
0
]];
[
composedOptions
appendFormat
:
@"}:standard{mux=%@"
,
[
self
.
currentProfile
objectAtIndex
:
0
]];
// add output destination (file only at this point)
// add output destination
[
composedOptions
appendFormat
:
@",dst=%@,access=file}"
,
_outputDestination
];
[
composedOptions
appendFormat
:
@",dst=%@,access=file}"
,
_outputDestination
];
}
else
{
/* streaming */
if
([[[
_stream_type_pop
selectedItem
]
title
]
isEqualToString
:
@"RTP"
])
[
composedOptions
appendFormat
:
@":rtp{mux=ts,dst=%@,port=%@"
,
_outputDestination
,
[
_stream_port_fld
stringValue
]];
else
if
([[[
_stream_type_pop
selectedItem
]
title
]
isEqualToString
:
@"UDP"
])
[
composedOptions
appendFormat
:
@":standard{mux=ts,dst=%@,port=%@,access=udp"
,
_outputDestination
,
[
_stream_port_fld
stringValue
]];
else
if
([[[
_stream_type_pop
selectedItem
]
title
]
isEqualToString
:
@"MMSH"
])
[
composedOptions
appendFormat
:
@":standard{mux=asfh,dst=%@,port=%@,access=mmsh"
,
_outputDestination
,
[
_stream_port_fld
stringValue
]];
else
[
composedOptions
appendFormat
:
@":standard{mux=%@,dst=%@,port=%@,access=http"
,
[
self
.
currentProfile
objectAtIndex
:
0
],
[
_stream_port_fld
stringValue
],
_outputDestination
];
if
([
_stream_sap_ckb
state
])
[
composedOptions
appendFormat
:
@",sap,name=
\"
%@
\"
"
,
[
_stream_channel_fld
stringValue
]];
if
([
_stream_sdp_ckb
state
])
[
composedOptions
appendFormat
:
@",sdp=%@"
,
[
_stream_sdp_fld
stringValue
]];
[
composedOptions
appendString
:
@"} :sout-keep"
];
}
NSString
*
returnString
=
[
NSString
stringWithString
:
composedOptions
];
NSString
*
returnString
=
[
NSString
stringWithString
:
composedOptions
];
[
composedOptions
release
];
[
composedOptions
release
];
...
...
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