[vlc-devel] [PATCH 1/2] macosx:Introduce Icecast streaming service
vibhoothiiaanand at gmail.com
vibhoothiiaanand at gmail.com
Thu May 10 22:04:58 CEST 2018
From: vibhoothiiaanand <vibhoothiiaanand at gmail.com>
Introducing Icecast as a new streaming option for all macOS users, This version
has seperate entries for username and passwords while other version doesn't have
that which helps to improve UX.
In the ,,Convert & Save" panel there are three new options
- Mount Point
- Username
- Password
fixes #17915
---
modules/gui/macosx/UI/ConvertAndSave.xib | 232 +++++++++++++--------
.../gui/macosx/VLCConvertAndSaveWindowController.h | 6 +
.../gui/macosx/VLCConvertAndSaveWindowController.m | 25 ++-
3 files changed, 175 insertions(+), 88 deletions(-)
diff --git a/modules/gui/macosx/UI/ConvertAndSave.xib b/modules/gui/macosx/UI/ConvertAndSave.xib
index 8a0578362d..491e45c9c9 100644
--- a/modules/gui/macosx/UI/ConvertAndSave.xib
+++ b/modules/gui/macosx/UI/ConvertAndSave.xib
@@ -1,9 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="10117" systemVersion="16G29" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES">
+<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="14109" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES">
<dependencies>
- <development version="7000" identifier="xcode"/>
- <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="10117"/>
+ <deployment identifier="macosx"/>
+ <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="14109"/>
<capability name="box content view" minToolsVersion="7.0"/>
+ <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<objects>
<customObject id="-2" userLabel="File's Owner" customClass="VLCConvertAndSaveWindowController">
@@ -63,6 +64,8 @@
<outlet property="fileDestinationFileNameStub" destination="49" id="559"/>
<outlet property="fileDestinationIcon" destination="48" id="556"/>
<outlet property="fileDestinationView" destination="387" id="555"/>
+ <outlet property="mountPointField" destination="dMz-bA-LNV" id="Pwg-bv-Fle"/>
+ <outlet property="mountPointLabel" destination="dMz-bA-LNV" id="4EW-33-mSL"/>
<outlet property="okButton" destination="21" id="551"/>
<outlet property="profileLabel" destination="11" id="544"/>
<outlet property="profilePopup" destination="13" id="545"/>
@@ -76,8 +79,14 @@
<outlet property="streamDestinationLabel" destination="356" id="609"/>
<outlet property="streamDestinationURLLabel" destination="300" id="561"/>
<outlet property="streamDestinationView" destination="388" id="560"/>
+ <outlet property="streamLoginPassField" destination="umM-an-G08" id="Jp6-hy-3fM"/>
+ <outlet property="streamLoginPassLabel" destination="umM-an-G08" id="b24-MF-N6M"/>
+ <outlet property="streamMountPointField" destination="dMz-bA-LNV" id="dA0-WS-4bR"/>
+ <outlet property="streamMountPointLabel" destination="QJQ-Pq-rw0" id="gbO-Th-jDn"/>
<outlet property="streamOkButton" destination="360" id="621"/>
<outlet property="streamPanel" destination="308" id="608"/>
+ <outlet property="streamPasswordField" destination="PoR-21-dj4" id="wOH-yD-xQF"/>
+ <outlet property="streamPasswordLabel" destination="rhq-qR-z3e" id="ztk-bx-MXh"/>
<outlet property="streamPortField" destination="312" id="626"/>
<outlet property="streamPortLabel" destination="316" id="625"/>
<outlet property="streamSAPCheckbox" destination="345" id="615"/>
@@ -90,6 +99,8 @@
<outlet property="streamTTLStepper" destination="319" id="624"/>
<outlet property="streamTypeLabel" destination="310" id="610"/>
<outlet property="streamTypePopup" destination="315" id="612"/>
+ <outlet property="streamUsernameField" destination="2Vk-or-GKu" id="PZh-4t-0jm"/>
+ <outlet property="streamUsernameLabel" destination="umM-an-G08" id="MFm-gf-f2w"/>
<outlet property="window" destination="1" id="540"/>
</connections>
</customObject>
@@ -99,7 +110,7 @@
<windowStyleMask key="styleMask" titled="YES" closable="YES" miniaturizable="YES"/>
<windowPositionMask key="initialPositionMask" leftStrut="YES" rightStrut="YES" topStrut="YES" bottomStrut="YES"/>
<rect key="contentRect" x="196" y="20" width="663" height="490"/>
- <rect key="screenRect" x="0.0" y="0.0" width="1280" height="778"/>
+ <rect key="screenRect" x="0.0" y="0.0" width="1280" height="800"/>
<value key="minSize" type="size" width="663" height="490"/>
<value key="maxSize" type="size" width="663" height="490"/>
<view key="contentView" id="2">
@@ -159,8 +170,6 @@
<constraint firstAttribute="width" constant="623" id="1e9-iK-lfq"/>
<constraint firstAttribute="height" constant="211" id="S51-zL-3hZ"/>
</constraints>
- <color key="borderColor" white="0.0" alpha="0.41999999999999998" colorSpace="calibratedWhite"/>
- <color key="fillColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
</box>
<box autoresizesSubviews="NO" borderType="line" titlePosition="noTitle" translatesAutoresizingMaskIntoConstraints="NO" id="10">
<rect key="frame" x="17" y="161" width="629" height="92"/>
@@ -232,8 +241,6 @@
<constraint firstAttribute="width" constant="623" id="pcx-Hn-9BS"/>
<constraint firstAttribute="height" constant="86" id="tky-N9-PlT"/>
</constraints>
- <color key="borderColor" white="0.0" alpha="0.41999999999999998" colorSpace="calibratedWhite"/>
- <color key="fillColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
</box>
<box autoresizesSubviews="NO" borderType="line" titlePosition="noTitle" translatesAutoresizingMaskIntoConstraints="NO" id="32">
<rect key="frame" x="17" y="58" width="629" height="100"/>
@@ -304,8 +311,6 @@
<constraint firstAttribute="height" constant="94" id="136-J5-OdM"/>
<constraint firstAttribute="width" constant="623" id="iQT-Dj-N9b"/>
</constraints>
- <color key="borderColor" white="0.0" alpha="0.41999999999999998" colorSpace="calibratedWhite"/>
- <color key="fillColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
</box>
<button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="21">
<rect key="frame" x="579" y="13" width="70" height="32"/>
@@ -367,7 +372,7 @@ DQ
<windowStyleMask key="styleMask" titled="YES" closable="YES" miniaturizable="YES" resizable="YES"/>
<windowPositionMask key="initialPositionMask" leftStrut="YES" rightStrut="YES" topStrut="YES" bottomStrut="YES"/>
<rect key="contentRect" x="340" y="255" width="558" height="382"/>
- <rect key="screenRect" x="0.0" y="0.0" width="1280" height="778"/>
+ <rect key="screenRect" x="0.0" y="0.0" width="1280" height="800"/>
<view key="contentView" id="132">
<rect key="frame" x="0.0" y="0.0" width="558" height="382"/>
<autoresizingMask key="autoresizingMask"/>
@@ -605,7 +610,7 @@ DQ
<binding destination="-2" name="value" keyPath="self.vidFramerate" id="666"/>
</connections>
</stepper>
- <box autoresizesSubviews="NO" title="Resolution" borderType="line" translatesAutoresizingMaskIntoConstraints="NO" id="206">
+ <box autoresizesSubviews="NO" borderType="line" title="Resolution" translatesAutoresizingMaskIntoConstraints="NO" id="206">
<rect key="frame" x="52" y="10" width="394" height="133"/>
<view key="contentView" id="4gP-3n-rkP">
<rect key="frame" x="1" y="1" width="392" height="117"/>
@@ -716,8 +721,6 @@ DQ
<constraint firstAttribute="width" constant="388" id="6iM-rk-euR"/>
<constraint firstAttribute="height" constant="129" id="L8c-wr-hjr"/>
</constraints>
- <color key="borderColor" white="0.0" alpha="0.41999999999999998" colorSpace="calibratedWhite"/>
- <color key="fillColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
</box>
</subviews>
<constraints>
@@ -746,8 +749,6 @@ DQ
<constraint firstAttribute="height" constant="244" id="dnU-6L-fqV"/>
<constraint firstAttribute="width" constant="494" id="oMu-fT-rAi"/>
</constraints>
- <color key="borderColor" white="0.0" alpha="0.41999999999999998" colorSpace="calibratedWhite"/>
- <color key="fillColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
</box>
</subviews>
<constraints>
@@ -776,7 +777,7 @@ DQ
</connections>
</button>
<button translatesAutoresizingMaskIntoConstraints="NO" id="208">
- <rect key="frame" x="15" y="248" width="153" height="18"/>
+ <rect key="frame" x="15" y="248" width="152" height="18"/>
<buttonCell key="cell" type="check" title="Keep original audio track" bezelStyle="regularSquare" imagePosition="left" alignment="left" controlSize="small" state="on" inset="2" id="209">
<behavior key="behavior" changeContents="YES" doesNotDimImage="YES" lightByContents="YES"/>
<font key="font" metaFont="smallSystem"/>
@@ -940,8 +941,6 @@ DQ
<constraint firstAttribute="height" constant="140" id="lh4-g7-y9H"/>
<constraint firstAttribute="width" constant="494" id="nFc-2s-PeV"/>
</constraints>
- <color key="borderColor" white="0.0" alpha="0.41999999999999998" colorSpace="calibratedWhite"/>
- <color key="fillColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
</box>
</subviews>
<constraints>
@@ -1060,20 +1059,20 @@ Gw
<window title="Stream Panel" allowsToolTipsWhenApplicationIsInactive="NO" autorecalculatesKeyViewLoop="NO" restorable="NO" oneShot="NO" releasedWhenClosed="NO" showsToolbarButton="NO" visibleAtLaunch="NO" animationBehavior="default" id="308" userLabel="Stream">
<windowStyleMask key="styleMask" titled="YES" closable="YES" miniaturizable="YES" resizable="YES"/>
<windowPositionMask key="initialPositionMask" leftStrut="YES" rightStrut="YES" topStrut="YES" bottomStrut="YES"/>
- <rect key="contentRect" x="131" y="60" width="532" height="368"/>
- <rect key="screenRect" x="0.0" y="0.0" width="1280" height="778"/>
+ <rect key="contentRect" x="131" y="60" width="607" height="451"/>
+ <rect key="screenRect" x="0.0" y="0.0" width="1280" height="800"/>
<view key="contentView" id="309">
- <rect key="frame" x="0.0" y="0.0" width="532" height="368"/>
+ <rect key="frame" x="0.0" y="0.0" width="607" height="451"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
- <box autoresizesSubviews="NO" title="Stream Destination" borderType="line" titlePosition="noTitle" translatesAutoresizingMaskIntoConstraints="NO" id="336">
- <rect key="frame" x="17" y="227" width="498" height="122"/>
+ <box autoresizesSubviews="NO" borderType="line" title="Stream Destination" titlePosition="noTitle" translatesAutoresizingMaskIntoConstraints="NO" id="336">
+ <rect key="frame" x="55" y="227" width="498" height="205"/>
<view key="contentView" id="gfn-LW-3Zl">
- <rect key="frame" x="1" y="1" width="496" height="120"/>
+ <rect key="frame" x="1" y="1" width="496" height="203"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<textField verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="312">
- <rect key="frame" x="407" y="13" width="50" height="22"/>
+ <rect key="frame" x="405" y="90" width="50" height="22"/>
<textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" selectable="YES" editable="YES" sendsActionOnEndEditing="YES" state="on" borderStyle="bezel" alignment="right" title="1234" drawsBackground="YES" id="332">
<font key="font" metaFont="system"/>
<color key="textColor" name="textColor" catalog="System" colorSpace="catalog"/>
@@ -1084,7 +1083,7 @@ Gw
</connections>
</textField>
<textField verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="317">
- <rect key="frame" x="407" y="46" width="50" height="22"/>
+ <rect key="frame" x="405" y="123" width="50" height="22"/>
<constraints>
<constraint firstAttribute="width" constant="50" id="Ueo-G3-TfK"/>
</constraints>
@@ -1094,20 +1093,12 @@ Gw
<color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
</textFieldCell>
</textField>
- <textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" translatesAutoresizingMaskIntoConstraints="NO" id="316">
- <rect key="frame" x="372" y="15" width="30" height="17"/>
- <textFieldCell key="cell" sendsActionOnEndEditing="YES" alignment="right" title="Port" id="323">
- <font key="font" metaFont="system"/>
- <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
- <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
- </textFieldCell>
- </textField>
<stepper horizontalHuggingPriority="750" verticalHuggingPriority="750" tag="1" translatesAutoresizingMaskIntoConstraints="NO" id="314">
- <rect key="frame" x="462" y="10" width="19" height="27"/>
+ <rect key="frame" x="460" y="87" width="19" height="27"/>
<stepperCell key="cell" continuous="YES" alignment="left" tag="1" maxValue="65535" doubleValue="1234" valueWraps="YES" id="330"/>
</stepper>
<textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" translatesAutoresizingMaskIntoConstraints="NO" id="313">
- <rect key="frame" x="15" y="15" width="54" height="17"/>
+ <rect key="frame" x="15" y="93" width="54" height="17"/>
<textFieldCell key="cell" sendsActionOnEndEditing="YES" alignment="left" title="Address" id="331">
<font key="font" metaFont="system"/>
<color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
@@ -1115,7 +1106,7 @@ Gw
</textFieldCell>
</textField>
<popUpButton verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="315">
- <rect key="frame" x="92" y="43" width="78" height="26"/>
+ <rect key="frame" x="114" y="121" width="81" height="26"/>
<popUpButtonCell key="cell" type="push" title="HTTP" bezelStyle="rounded" alignment="left" lineBreakMode="clipping" state="on" borderStyle="borderAndBezel" inset="2" arrowPosition="arrowAtCenter" preferredEdge="maxY" selectedItem="329" id="324">
<behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
<font key="font" metaFont="menu"/>
@@ -1125,6 +1116,7 @@ Gw
<menuItem title="MMSH" id="326"/>
<menuItem title="RTP" id="328"/>
<menuItem title="UDP" id="327"/>
+ <menuItem title="Icecast" id="6RK-6i-sV4"/>
</items>
</menu>
</popUpButtonCell>
@@ -1133,7 +1125,7 @@ Gw
</connections>
</popUpButton>
<textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" translatesAutoresizingMaskIntoConstraints="NO" id="310">
- <rect key="frame" x="15" y="48" width="34" height="17"/>
+ <rect key="frame" x="15" y="126" width="34" height="17"/>
<textFieldCell key="cell" sendsActionOnEndEditing="YES" alignment="left" title="Type" id="334">
<font key="font" metaFont="system"/>
<color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
@@ -1141,9 +1133,9 @@ Gw
</textFieldCell>
</textField>
<textField verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="311">
- <rect key="frame" x="94" y="13" width="205" height="22"/>
+ <rect key="frame" x="116" y="91" width="219" height="22"/>
<constraints>
- <constraint firstAttribute="width" constant="205" id="bzu-Kr-nS8"/>
+ <constraint firstAttribute="width" constant="219" id="bzu-Kr-nS8"/>
</constraints>
<textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" selectable="YES" editable="YES" sendsActionOnEndEditing="YES" state="on" borderStyle="bezel" alignment="left" drawsBackground="YES" id="333">
<font key="font" metaFont="system"/>
@@ -1152,7 +1144,7 @@ Gw
</textFieldCell>
</textField>
<textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" translatesAutoresizingMaskIntoConstraints="NO" id="318">
- <rect key="frame" x="374" y="48" width="28" height="17"/>
+ <rect key="frame" x="372" y="127" width="28" height="17"/>
<textFieldCell key="cell" sendsActionOnEndEditing="YES" alignment="right" title="TTL" id="321">
<font key="font" metaFont="system"/>
<color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
@@ -1160,39 +1152,116 @@ Gw
</textFieldCell>
</textField>
<stepper horizontalHuggingPriority="750" verticalHuggingPriority="750" tag="1" translatesAutoresizingMaskIntoConstraints="NO" id="319">
- <rect key="frame" x="462" y="43" width="19" height="27"/>
+ <rect key="frame" x="460" y="120" width="19" height="27"/>
<stepperCell key="cell" continuous="YES" alignment="left" tag="1" minValue="1" maxValue="65535" doubleValue="1" valueWraps="YES" id="320"/>
</stepper>
<textField verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="356">
- <rect key="frame" x="15" y="85" width="159" height="22"/>
+ <rect key="frame" x="15" y="161" width="159" height="22"/>
<textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" alignment="left" title="Stream Destination" id="357">
<font key="font" metaFont="system" size="18"/>
<color key="textColor" name="headerColor" catalog="System" colorSpace="catalog"/>
<color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
</textFieldCell>
</textField>
+ <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="QJQ-Pq-rw0">
+ <rect key="frame" x="15" y="65" width="78" height="17"/>
+ <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="Mount Point" id="pLJ-la-ocQ">
+ <font key="font" metaFont="system"/>
+ <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
+ <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
+ </textFieldCell>
+ </textField>
+ <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="umM-an-G08">
+ <rect key="frame" x="15" y="38" width="66" height="17"/>
+ <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="Username" id="xj8-Q2-G6S">
+ <font key="font" metaFont="system"/>
+ <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
+ <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
+ </textFieldCell>
+ </textField>
+ <textField verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="dMz-bA-LNV">
+ <rect key="frame" x="116" y="62" width="219" height="22"/>
+ <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" selectable="YES" editable="YES" sendsActionOnEndEditing="YES" state="on" borderStyle="bezel" drawsBackground="YES" id="LDl-c9-9bZ">
+ <font key="font" metaFont="system"/>
+ <color key="textColor" name="textColor" catalog="System" colorSpace="catalog"/>
+ <color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
+ </textFieldCell>
+ </textField>
+ <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="rhq-qR-z3e">
+ <rect key="frame" x="15" y="12" width="63" height="17"/>
+ <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="Password" id="pqt-sc-Mbg">
+ <font key="font" metaFont="system"/>
+ <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
+ <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
+ </textFieldCell>
+ </textField>
+ <textField verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="2Vk-or-GKu">
+ <rect key="frame" x="116" y="35" width="163" height="22"/>
+ <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" selectable="YES" editable="YES" sendsActionOnEndEditing="YES" state="on" borderStyle="bezel" drawsBackground="YES" id="Rvv-yZ-gnh">
+ <font key="font" metaFont="system"/>
+ <color key="textColor" name="textColor" catalog="System" colorSpace="catalog"/>
+ <color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
+ </textFieldCell>
+ </textField>
+ <textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" translatesAutoresizingMaskIntoConstraints="NO" id="316">
+ <rect key="frame" x="370" y="95" width="30" height="17"/>
+ <textFieldCell key="cell" sendsActionOnEndEditing="YES" alignment="right" title="Port" id="323">
+ <font key="font" metaFont="system"/>
+ <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
+ <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
+ </textFieldCell>
+ </textField>
+ <secureTextField verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="PoR-21-dj4">
+ <rect key="frame" x="116" y="7" width="163" height="22"/>
+ <constraints>
+ <constraint firstAttribute="width" constant="163" id="VPk-72-g8m"/>
+ </constraints>
+ <secureTextFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" selectable="YES" editable="YES" sendsActionOnEndEditing="YES" borderStyle="bezel" drawsBackground="YES" usesSingleLineMode="YES" id="q70-FT-7NN">
+ <font key="font" metaFont="system"/>
+ <color key="textColor" name="textColor" catalog="System" colorSpace="catalog"/>
+ <color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
+ <allowedInputSourceLocales>
+ <string>NSAllRomanInputSourcesLocaleIdentifier</string>
+ </allowedInputSourceLocales>
+ </secureTextFieldCell>
+ </secureTextField>
</subviews>
<constraints>
<constraint firstItem="319" firstAttribute="leading" secondItem="317" secondAttribute="trailing" constant="8" id="1J1-fz-uqL"/>
- <constraint firstAttribute="bottom" secondItem="311" secondAttribute="bottom" constant="13" id="9db-uY-dLu"/>
+ <constraint firstItem="PoR-21-dj4" firstAttribute="leading" secondItem="rhq-qR-z3e" secondAttribute="trailing" constant="40" id="4PI-bN-txD"/>
+ <constraint firstItem="QJQ-Pq-rw0" firstAttribute="leading" secondItem="rhq-qR-z3e" secondAttribute="leading" id="6Sa-uO-QTU"/>
+ <constraint firstItem="dMz-bA-LNV" firstAttribute="trailing" secondItem="311" secondAttribute="trailing" id="8p2-R2-s4p"/>
+ <constraint firstAttribute="bottom" secondItem="311" secondAttribute="bottom" constant="91" id="9db-uY-dLu"/>
<constraint firstItem="317" firstAttribute="leading" secondItem="312" secondAttribute="leading" id="B24-Xh-2YT"/>
+ <constraint firstItem="umM-an-G08" firstAttribute="top" secondItem="QJQ-Pq-rw0" secondAttribute="bottom" constant="10" id="C3i-b9-Wrk"/>
+ <constraint firstItem="dMz-bA-LNV" firstAttribute="leading" secondItem="QJQ-Pq-rw0" secondAttribute="trailing" constant="25" id="DHd-wV-iQ6"/>
<constraint firstItem="311" firstAttribute="top" secondItem="315" secondAttribute="bottom" constant="11" id="EEV-RU-fKU"/>
- <constraint firstItem="356" firstAttribute="top" secondItem="gfn-LW-3Zl" secondAttribute="top" constant="13" id="EUx-Vr-JKJ"/>
+ <constraint firstItem="356" firstAttribute="top" secondItem="gfn-LW-3Zl" secondAttribute="top" constant="20" id="EUx-Vr-JKJ"/>
<constraint firstItem="313" firstAttribute="leading" secondItem="gfn-LW-3Zl" secondAttribute="leading" constant="17" id="G13-rA-ECe"/>
- <constraint firstItem="312" firstAttribute="centerY" secondItem="311" secondAttribute="centerY" id="HHB-Fo-vCn"/>
- <constraint firstAttribute="trailing" secondItem="314" secondAttribute="trailing" constant="18" id="I11-8g-N92"/>
+ <constraint firstItem="312" firstAttribute="centerY" secondItem="311" secondAttribute="centerY" constant="1" id="HHB-Fo-vCn"/>
+ <constraint firstAttribute="trailing" secondItem="314" secondAttribute="trailing" constant="20" id="I11-8g-N92"/>
+ <constraint firstItem="PoR-21-dj4" firstAttribute="trailing" secondItem="2Vk-or-GKu" secondAttribute="trailing" id="Ilg-oR-HvA"/>
<constraint firstItem="310" firstAttribute="centerY" secondItem="315" secondAttribute="centerY" id="J0J-Yp-kdf"/>
- <constraint firstItem="312" firstAttribute="centerY" secondItem="316" secondAttribute="centerY" id="Klv-C0-qsH"/>
+ <constraint firstItem="312" firstAttribute="centerY" secondItem="316" secondAttribute="centerY" constant="2.5" id="Klv-C0-qsH"/>
<constraint firstItem="310" firstAttribute="leading" secondItem="313" secondAttribute="leading" id="LOo-Sy-AK0"/>
- <constraint firstItem="311" firstAttribute="leading" secondItem="313" secondAttribute="trailing" constant="27" id="PSk-Ee-ahr"/>
+ <constraint firstItem="311" firstAttribute="leading" secondItem="313" secondAttribute="trailing" constant="49" id="PSk-Ee-ahr"/>
+ <constraint firstItem="QJQ-Pq-rw0" firstAttribute="baseline" secondItem="dMz-bA-LNV" secondAttribute="baseline" id="Qps-v5-rA6"/>
+ <constraint firstItem="rhq-qR-z3e" firstAttribute="top" secondItem="umM-an-G08" secondAttribute="bottom" constant="9" id="RIj-mi-qk2"/>
<constraint firstItem="313" firstAttribute="centerY" secondItem="311" secondAttribute="centerY" id="UUs-0L-ljX"/>
<constraint firstItem="312" firstAttribute="top" secondItem="317" secondAttribute="bottom" constant="11" id="Vy2-og-cY7"/>
<constraint firstItem="317" firstAttribute="width" secondItem="312" secondAttribute="width" id="Wkm-g7-FEr"/>
+ <constraint firstItem="rhq-qR-z3e" firstAttribute="top" secondItem="PoR-21-dj4" secondAttribute="top" id="Xdj-5f-f5F"/>
<constraint firstItem="312" firstAttribute="centerY" secondItem="314" secondAttribute="centerY" id="Zro-Ez-WqJ"/>
+ <constraint firstAttribute="bottom" secondItem="dMz-bA-LNV" secondAttribute="bottom" constant="62" id="bJb-ik-sVb"/>
+ <constraint firstItem="PoR-21-dj4" firstAttribute="leading" secondItem="2Vk-or-GKu" secondAttribute="leading" id="f3V-aG-sOv"/>
<constraint firstItem="317" firstAttribute="centerY" secondItem="319" secondAttribute="centerY" id="hlN-QB-SyW"/>
+ <constraint firstItem="QJQ-Pq-rw0" firstAttribute="leading" secondItem="313" secondAttribute="leading" id="i0E-zt-M9U"/>
<constraint firstItem="315" firstAttribute="leading" secondItem="311" secondAttribute="leading" id="ivq-3S-Xod"/>
- <constraint firstItem="317" firstAttribute="centerY" secondItem="318" secondAttribute="centerY" id="o0w-qr-6dp"/>
+ <constraint firstItem="PoR-21-dj4" firstAttribute="top" secondItem="2Vk-or-GKu" secondAttribute="bottom" constant="6" id="mU1-Yc-vdc"/>
+ <constraint firstItem="317" firstAttribute="centerY" secondItem="318" secondAttribute="centerY" constant="1.5" id="o0w-qr-6dp"/>
<constraint firstItem="312" firstAttribute="leading" secondItem="316" secondAttribute="trailing" constant="7" id="qH3-sx-ytI"/>
+ <constraint firstItem="QJQ-Pq-rw0" firstAttribute="leading" secondItem="umM-an-G08" secondAttribute="leading" id="r6v-lz-Ddk"/>
+ <constraint firstItem="dMz-bA-LNV" firstAttribute="top" secondItem="311" secondAttribute="bottom" constant="7" id="rBa-S2-jpR"/>
<constraint firstItem="314" firstAttribute="leading" secondItem="312" secondAttribute="trailing" constant="8" id="wJP-rr-NJH"/>
<constraint firstItem="356" firstAttribute="leading" secondItem="gfn-LW-3Zl" secondAttribute="leading" constant="17" id="y7X-gF-I3k"/>
<constraint firstItem="317" firstAttribute="leading" secondItem="318" secondAttribute="trailing" constant="7" id="ycC-3r-XTe"/>
@@ -1200,13 +1269,37 @@ Gw
</view>
<constraints>
<constraint firstAttribute="width" constant="492" id="GA5-xc-ed7"/>
- <constraint firstAttribute="height" constant="116" id="Hhe-6F-sqP"/>
+ <constraint firstAttribute="height" constant="199" id="Hhe-6F-sqP"/>
</constraints>
- <color key="borderColor" white="0.0" alpha="0.41999999999999998" colorSpace="calibratedWhite"/>
- <color key="fillColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
</box>
+ <button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="360">
+ <rect key="frame" x="518" y="12" width="75" height="32"/>
+ <buttonCell key="cell" type="push" title="Apply" bezelStyle="rounded" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="361">
+ <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
+ <font key="font" metaFont="system"/>
+ <string key="keyEquivalent" base64-UTF8="YES">
+DQ
+</string>
+ </buttonCell>
+ <connections>
+ <action selector="closeStreamPanel:" target="-2" id="643"/>
+ </connections>
+ </button>
+ <button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="532">
+ <rect key="frame" x="436" y="12" width="82" height="32"/>
+ <buttonCell key="cell" type="push" title="Cancel" bezelStyle="rounded" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="533">
+ <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
+ <font key="font" metaFont="system"/>
+ <string key="keyEquivalent" base64-UTF8="YES">
+Gw
+</string>
+ </buttonCell>
+ <connections>
+ <action selector="closeStreamPanel:" target="-2" id="642"/>
+ </connections>
+ </button>
<box title="Stream Announcing" titlePosition="noTitle" translatesAutoresizingMaskIntoConstraints="NO" id="337">
- <rect key="frame" x="17" y="56" width="498" height="169"/>
+ <rect key="frame" x="54" y="56" width="498" height="169"/>
<view key="contentView" id="N8c-ne-PD9">
<rect key="frame" x="2" y="2" width="494" height="165"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
@@ -1349,35 +1442,7 @@ Gw
<constraint firstAttribute="width" constant="492" id="EiF-2M-nAp"/>
<constraint firstAttribute="height" constant="163" id="rnv-0L-LCw"/>
</constraints>
- <color key="borderColor" white="0.0" alpha="0.41999999999999998" colorSpace="calibratedWhite"/>
- <color key="fillColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
</box>
- <button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="360">
- <rect key="frame" x="443" y="12" width="75" height="32"/>
- <buttonCell key="cell" type="push" title="Apply" bezelStyle="rounded" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="361">
- <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
- <font key="font" metaFont="system"/>
- <string key="keyEquivalent" base64-UTF8="YES">
-DQ
-</string>
- </buttonCell>
- <connections>
- <action selector="closeStreamPanel:" target="-2" id="643"/>
- </connections>
- </button>
- <button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="532">
- <rect key="frame" x="361" y="12" width="82" height="32"/>
- <buttonCell key="cell" type="push" title="Cancel" bezelStyle="rounded" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="533">
- <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
- <font key="font" metaFont="system"/>
- <string key="keyEquivalent" base64-UTF8="YES">
-Gw
-</string>
- </buttonCell>
- <connections>
- <action selector="closeStreamPanel:" target="-2" id="642"/>
- </connections>
- </button>
</subviews>
<constraints>
<constraint firstItem="336" firstAttribute="top" secondItem="309" secondAttribute="top" constant="21" id="56g-ml-XeM"/>
@@ -1393,6 +1458,7 @@ Gw
<connections>
<outlet property="initialFirstResponder" destination="311" id="386"/>
</connections>
+ <point key="canvasLocation" x="0.5" y="42.5"/>
</window>
<customView id="387" userLabel="File Dest">
<rect key="frame" x="0.0" y="0.0" width="531" height="72"/>
diff --git a/modules/gui/macosx/VLCConvertAndSaveWindowController.h b/modules/gui/macosx/VLCConvertAndSaveWindowController.h
index 930b086946..26cf860250 100644
--- a/modules/gui/macosx/VLCConvertAndSaveWindowController.h
+++ b/modules/gui/macosx/VLCConvertAndSaveWindowController.h
@@ -123,6 +123,12 @@
@property (weak) IBOutlet NSTextField *streamChannelLabel;
@property (weak) IBOutlet NSTextField *streamChannelField;
@property (weak) IBOutlet NSMatrix *streamSDPMatrix;
+ at property (weak) IBOutlet NSTextField *streamMountPointLabel;
+ at property (weak) IBOutlet NSTextField *streamMountPointField;
+ at property (weak) IBOutlet NSTextField *streamUsernameLabel;
+ at property (weak) IBOutlet NSTextField *streamUsernameField;
+ at property (weak) IBOutlet NSTextField *streamPasswordLabel;
+ at property (weak) IBOutlet NSTextField *streamPasswordField;
@property (weak) IBOutlet NSButton *streamSDPFileBrowseButton;
@property (weak) IBOutlet NSTextField *streamSDPLabel;
@property (weak) IBOutlet NSTextField *streamSDPField;
diff --git a/modules/gui/macosx/VLCConvertAndSaveWindowController.m b/modules/gui/macosx/VLCConvertAndSaveWindowController.m
index b0efac7584..28cf3c1bbb 100644
--- a/modules/gui/macosx/VLCConvertAndSaveWindowController.m
+++ b/modules/gui/macosx/VLCConvertAndSaveWindowController.m
@@ -519,7 +519,7 @@
return;
/* provide a summary of the user selections */
- NSMutableString * labelContent = [[NSMutableString alloc] initWithFormat:_NS("%@ stream to %@:%@"), [_streamTypePopup titleOfSelectedItem], [_streamAddressField stringValue], [_streamPortField stringValue]];
+ NSMutableString * labelContent = [[NSMutableString alloc] initWithFormat:_NS("%@ stream to %@:%@"), [_streamTypePopup titleOfSelectedItem], [_streamAddressField stringValue] ];
if ([_streamTypePopup indexOfSelectedItem] > 1)
[labelContent appendFormat:@" (\"%@\")", [_streamChannelField stringValue]];
@@ -556,7 +556,10 @@
- (IBAction)streamTypeToggle:(id)sender
{
NSUInteger index = [_streamTypePopup indexOfSelectedItem];
- if (index <= 1) { // HTTP, MMSH
+ [_streamMountPointField setEnabled:NO];
+ [_streamUsernameField setEnabled:NO];
+ [_streamPasswordField setEnabled:NO];
+ if (index <= 1) { // HTTP , MMSH
[_streamTTLField setEnabled:NO];
[_streamTTLStepper setEnabled:NO];
[_streamSAPCheckbox setEnabled:NO];
@@ -566,11 +569,20 @@
[_streamTTLStepper setEnabled:YES];
[_streamSAPCheckbox setEnabled:YES];
[_streamSDPMatrix setEnabled:YES];
- } else { // UDP
+ }else if(index == 3) { // UDP
[_streamTTLField setEnabled:YES];
[_streamTTLStepper setEnabled:YES];
[_streamSAPCheckbox setEnabled:YES];
[_streamSDPMatrix setEnabled:NO];
+ }else { //Icecast
+ [_streamTTLField setEnabled:NO];
+ [_streamTTLStepper setEnabled:NO];
+ [_streamSAPCheckbox setEnabled:NO];
+ [_streamSDPMatrix setEnabled:NO];
+ [_streamMountPointField setEnabled:YES];
+ [_streamUsernameField setEnabled:YES];
+ [_streamPasswordField setEnabled:YES];
+
}
[self streamAnnouncementToggle:sender];
}
@@ -930,7 +942,7 @@
if ([[self.currentProfile objectAtIndex:15] intValue])
[composedOptions appendFormat:@",soverlay"];
}
-
+
if (!b_streaming) {
/* file transcoding */
// add muxer
@@ -942,11 +954,14 @@
withString:@"\\\""];
[composedOptions appendFormat:@",access=file{no-overwrite},dst=\"%@\"}", _outputDestination];
} else {
+ [composedOptions appendString:@"}"];
/* streaming */
if ([[[_streamTypePopup selectedItem] title] isEqualToString:@"RTP"])
[composedOptions appendFormat:@":rtp{mux=ts,dst=%@,port=%@", _outputDestination, [_streamPortField stringValue]];
else if ([[[_streamTypePopup selectedItem] title] isEqualToString:@"UDP"])
[composedOptions appendFormat:@":standard{mux=ts,dst=%@,port=%@,access=udp", _outputDestination, [_streamPortField stringValue]];
+ else if ([[[_streamTypePopup selectedItem] title] isEqualToString:@"Icecast"])
+ [composedOptions appendFormat:@":standard{mux=ogg,dst=%@:%@@%@,access=shout", [_streamUsernameField stringValue], [_streamPasswordField stringValue], _outputDestination];
else if ([[[_streamTypePopup selectedItem] title] isEqualToString:@"MMSH"])
[composedOptions appendFormat:@":standard{mux=asfh,dst=%@,port=%@,access=mmsh", _outputDestination, [_streamPortField stringValue]];
else
@@ -970,7 +985,7 @@
}
}
- [composedOptions appendString:@"} :sout-keep"];
+ [composedOptions appendString:@"}"];
}
return [NSString stringWithString:composedOptions];
--
2.16.2
More information about the vlc-devel
mailing list