...
 
Commits (7)
......@@ -207,7 +207,7 @@ static int Open( vlc_object_t *p_this )
|| shout_set_protocol( p_shout, SHOUT_PROTOCOL_ICY ) != SHOUTERR_SUCCESS
|| shout_set_port( p_shout, url.i_port ) != SHOUTERR_SUCCESS
|| shout_set_password( p_shout, url.psz_password ) != SHOUTERR_SUCCESS
|| shout_set_mount( p_shout, url.psz_path ) != SHOUTERR_SUCCESS
|| shout_set_mount( p_shout, (url.psz_path != NULL ) ? url.psz_path : "/" ) != SHOUTERR_SUCCESS
|| shout_set_user( p_shout, url.psz_username ) != SHOUTERR_SUCCESS
|| shout_set_agent( p_shout, "VLC media player " VERSION ) != SHOUTERR_SUCCESS
|| shout_set_name( p_shout, psz_name ) != SHOUTERR_SUCCESS
......@@ -217,16 +217,14 @@ static int Open( vlc_object_t *p_this )
/* || shout_set_nonblocking( p_shout, 1 ) != SHOUTERR_SUCCESS */
)
{
msg_Err( p_access, "failed to initialize shout streaming to %s:%i/%s",
url.psz_host, url.i_port, url.psz_path );
msg_Err( p_access, "failed to initialize shout streaming to %s:%i/%s; %s [<Hostname>:<port>/<filePath>;<last shout error that occured in this connection> eg,http://server:8000/mpd.ogg.m3u; ]",
url.psz_host, url.i_port, url.psz_path,shout_get_error(p_shout) );
free( psz_name );
free( psz_description );
free( psz_genre );
free( psz_url );
goto error;
}
free( psz_name );
free( psz_description );
free( psz_genre );
......
<?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="14113" 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="14113"/>
<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="1920" height="1080"/>
<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="1920" height="1080"/>
<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="478"/>
<rect key="screenRect" x="0.0" y="0.0" width="1920" height="1057"/>
<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="478"/>
<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="232"/>
<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="230"/>
<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="117" 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="150" 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="114" 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"/>
<textField horizontalHuggingPriority="249" verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" translatesAutoresizingMaskIntoConstraints="NO" id="313">
<rect key="frame" x="15" y="120" width="83" 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="112" y="147" width="224" 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>
......@@ -1132,8 +1124,8 @@ Gw
<action selector="streamTypeToggle:" target="-2" id="641"/>
</connections>
</popUpButton>
<textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" translatesAutoresizingMaskIntoConstraints="NO" id="310">
<rect key="frame" x="15" y="48" width="34" height="17"/>
<textField horizontalHuggingPriority="249" verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" translatesAutoresizingMaskIntoConstraints="NO" id="310">
<rect key="frame" x="15" y="153" width="83" 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="114" y="117" width="219" height="22"/>
<constraints>
<constraint firstAttribute="width" constant="205" id="bzu-Kr-nS8"/>
<constraint firstAttribute="width" constant="219" id="erm-fM-1hK"/>
</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"/>
......@@ -1151,62 +1143,163 @@ Gw
<color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
</textFieldCell>
</textField>
<textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" translatesAutoresizingMaskIntoConstraints="NO" id="318">
<rect key="frame" x="374" y="48" 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"/>
<color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
</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="147" 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="188" 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="249" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="QJQ-Pq-rw0">
<rect key="frame" x="15" y="87" width="83" 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="249" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="umM-an-G08">
<rect key="frame" x="15" y="54" width="83" 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="114" y="84" width="219" height="22"/>
<textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" selectable="YES" editable="YES" enabled="NO" 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="249" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="rhq-qR-z3e">
<rect key="frame" x="15" y="21" width="83" 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="114" y="51" width="219" height="22"/>
<textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" selectable="YES" editable="YES" enabled="NO" 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="120" 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="114" y="18" width="219" height="22"/>
<secureTextFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" selectable="YES" editable="YES" enabled="NO" 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>
<textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" translatesAutoresizingMaskIntoConstraints="NO" id="318">
<rect key="frame" x="370" y="153" width="30" 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"/>
<color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
</textFieldCell>
</textField>
</subviews>
<constraints>
<constraint firstAttribute="trailing" secondItem="319" secondAttribute="trailing" constant="20" id="0Jv-az-P8P"/>
<constraint firstItem="318" firstAttribute="leading" secondItem="316" secondAttribute="leading" id="0wy-0A-HRi"/>
<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="rhq-qR-z3e" firstAttribute="baseline" secondItem="PoR-21-dj4" secondAttribute="baseline" id="2GD-qY-gfs"/>
<constraint firstItem="311" firstAttribute="baseline" secondItem="316" secondAttribute="baseline" id="2ul-Uq-QnR"/>
<constraint firstItem="2Vk-or-GKu" firstAttribute="leading" secondItem="311" secondAttribute="leading" id="3hg-Zg-abR"/>
<constraint firstItem="316" firstAttribute="baseline" secondItem="312" secondAttribute="baseline" id="40Z-FK-Gkj"/>
<constraint firstItem="PoR-21-dj4" firstAttribute="leading" secondItem="311" secondAttribute="leading" id="4D8-GC-J1U"/>
<constraint firstItem="315" firstAttribute="trailing" secondItem="311" secondAttribute="trailing" id="5WW-hM-eCh"/>
<constraint firstItem="318" firstAttribute="baseline" secondItem="317" secondAttribute="baseline" id="6zd-Wq-eOW"/>
<constraint firstItem="rhq-qR-z3e" firstAttribute="trailing" secondItem="310" secondAttribute="trailing" id="7Uq-Ff-Q1k"/>
<constraint firstItem="rhq-qR-z3e" firstAttribute="top" secondItem="umM-an-G08" secondAttribute="bottom" constant="16" id="9hU-UV-P6h"/>
<constraint firstItem="317" firstAttribute="leading" secondItem="312" secondAttribute="leading" id="B24-Xh-2YT"/>
<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="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="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="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="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="311" firstAttribute="baseline" secondItem="313" secondAttribute="baseline" id="Bkt-w0-uVW"/>
<constraint firstItem="356" firstAttribute="top" secondItem="gfn-LW-3Zl" secondAttribute="top" constant="20" id="EUx-Vr-JKJ"/>
<constraint firstItem="umM-an-G08" firstAttribute="trailing" secondItem="310" secondAttribute="trailing" id="Eaw-bl-Nnh"/>
<constraint firstItem="315" firstAttribute="leading" secondItem="310" secondAttribute="trailing" constant="18" id="FbS-mM-TcU"/>
<constraint firstItem="umM-an-G08" firstAttribute="baseline" secondItem="2Vk-or-GKu" secondAttribute="baseline" id="GKV-ha-fuo"/>
<constraint firstItem="rhq-qR-z3e" firstAttribute="leading" secondItem="313" secondAttribute="leading" id="H5C-cS-6U9"/>
<constraint firstAttribute="trailing" secondItem="314" secondAttribute="trailing" constant="20" id="I11-8g-N92"/>
<constraint firstItem="QJQ-Pq-rw0" firstAttribute="top" secondItem="313" secondAttribute="bottom" constant="16" id="L2p-Fd-G1P"/>
<constraint firstItem="QJQ-Pq-rw0" firstAttribute="baseline" secondItem="dMz-bA-LNV" secondAttribute="baseline" id="MqH-Mk-F3a"/>
<constraint firstItem="315" firstAttribute="baseline" secondItem="310" secondAttribute="baseline" id="P8j-AG-lYO"/>
<constraint firstItem="umM-an-G08" firstAttribute="top" secondItem="QJQ-Pq-rw0" secondAttribute="bottom" constant="16" id="PQL-ok-wFc"/>
<constraint firstItem="313" firstAttribute="top" secondItem="310" secondAttribute="bottom" constant="16" id="R1I-q5-RH1"/>
<constraint firstItem="QJQ-Pq-rw0" firstAttribute="trailing" secondItem="310" secondAttribute="trailing" id="UE6-3p-Dlz"/>
<constraint firstItem="317" firstAttribute="width" secondItem="312" secondAttribute="width" id="Wkm-g7-FEr"/>
<constraint firstItem="QJQ-Pq-rw0" firstAttribute="leading" secondItem="313" secondAttribute="leading" id="YCm-0B-yBM"/>
<constraint firstItem="312" firstAttribute="centerY" secondItem="314" secondAttribute="centerY" id="Zro-Ez-WqJ"/>
<constraint firstItem="310" firstAttribute="top" secondItem="356" secondAttribute="bottom" constant="18" id="aKt-U6-vco"/>
<constraint firstItem="2Vk-or-GKu" firstAttribute="trailing" secondItem="311" secondAttribute="trailing" id="b1t-6Y-KqC"/>
<constraint firstAttribute="trailing" relation="greaterThanOrEqual" secondItem="356" secondAttribute="trailing" constant="20" symbolic="YES" id="bsr-kP-RQI"/>
<constraint firstItem="310" firstAttribute="leading" secondItem="313" secondAttribute="leading" id="cxo-S5-oKo"/>
<constraint firstItem="umM-an-G08" firstAttribute="leading" secondItem="313" secondAttribute="leading" id="esb-xb-3di"/>
<constraint firstItem="315" firstAttribute="leading" secondItem="311" secondAttribute="leading" id="gQy-Ra-aPJ"/>
<constraint firstItem="318" firstAttribute="baseline" secondItem="315" secondAttribute="baseline" id="hRO-uj-h88"/>
<constraint firstItem="317" firstAttribute="centerY" secondItem="319" secondAttribute="centerY" id="hlN-QB-SyW"/>
<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="313" firstAttribute="trailing" secondItem="310" secondAttribute="trailing" id="iwd-jj-akX"/>
<constraint firstItem="dMz-bA-LNV" firstAttribute="leading" secondItem="311" secondAttribute="leading" id="jay-1O-ikI"/>
<constraint firstItem="PoR-21-dj4" firstAttribute="trailing" secondItem="311" secondAttribute="trailing" id="ktB-cD-aAz"/>
<constraint firstItem="318" firstAttribute="leading" secondItem="315" secondAttribute="trailing" constant="39" id="l4Z-U3-0ah"/>
<constraint firstItem="312" firstAttribute="leading" secondItem="316" secondAttribute="trailing" constant="7" id="qH3-sx-ytI"/>
<constraint firstItem="dMz-bA-LNV" firstAttribute="trailing" secondItem="311" secondAttribute="trailing" id="uof-cm-9We"/>
<constraint firstAttribute="bottom" secondItem="rhq-qR-z3e" secondAttribute="bottom" constant="21" id="wGX-dv-ne7"/>
<constraint firstItem="314" firstAttribute="leading" secondItem="312" secondAttribute="trailing" constant="8" id="wJP-rr-NJH"/>
<constraint firstItem="310" firstAttribute="leading" secondItem="356" secondAttribute="leading" id="wLk-xX-waP"/>
<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"/>
</constraints>
</view>
<constraints>
<constraint firstAttribute="width" constant="492" id="GA5-xc-ed7"/>
<constraint firstAttribute="height" constant="116" 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"/>
</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,50 +1442,25 @@ 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"/>
<constraint firstAttribute="trailing" secondItem="336" secondAttribute="trailing" constant="57" id="AVj-bM-FXL"/>
<constraint firstItem="337" firstAttribute="top" secondItem="336" secondAttribute="bottom" constant="8" id="Oza-nz-eYo"/>
<constraint firstItem="336" firstAttribute="centerX" secondItem="309" secondAttribute="centerX" id="XqD-S3-r7W"/>
<constraint firstItem="532" firstAttribute="top" secondItem="337" secondAttribute="bottom" constant="20" id="Yof-gU-rq5"/>
<constraint firstAttribute="bottom" secondItem="360" secondAttribute="bottom" constant="19" id="aYb-70-cFt"/>
<constraint firstItem="360" firstAttribute="centerY" secondItem="532" secondAttribute="centerY" id="bEe-zU-mlj"/>
<constraint firstItem="337" firstAttribute="centerX" secondItem="309" secondAttribute="centerX" id="hvK-hJ-89d"/>
<constraint firstAttribute="trailing" secondItem="360" secondAttribute="trailing" constant="20" id="joz-ke-HMU"/>
<constraint firstItem="336" firstAttribute="leading" secondItem="309" secondAttribute="leading" constant="58" id="kAw-cq-2dQ"/>
<constraint firstItem="360" firstAttribute="leading" secondItem="532" secondAttribute="trailing" constant="12" id="zp6-3Z-1iB"/>
</constraints>
</view>
<connections>
<outlet property="initialFirstResponder" destination="311" id="386"/>
</connections>
<point key="canvasLocation" x="0.5" y="56"/>
</window>
<customView id="387" userLabel="File Dest">
<rect key="frame" x="0.0" y="0.0" width="531" height="72"/>
......
......@@ -3,7 +3,6 @@
<dependencies>
<deployment identifier="macosx"/>
<plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="14113"/>
<capability name="box content view" minToolsVersion="7.0"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<objects>
......@@ -18,7 +17,7 @@
<windowStyleMask key="styleMask" titled="YES" closable="YES" miniaturizable="YES" resizable="YES"/>
<windowPositionMask key="initialPositionMask" leftStrut="YES" topStrut="YES"/>
<rect key="contentRect" x="53" y="419" width="716" height="333"/>
<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="2">
<rect key="frame" x="0.0" y="0.0" width="716" height="333"/>
<autoresizingMask key="autoresizingMask"/>
......@@ -29,312 +28,12 @@
<customView hidden="YES" focusRingType="none" translatesAutoresizingMaskIntoConstraints="NO" id="4665" customClass="VLCVoutView">
<rect key="frame" x="0.0" y="0.0" width="716" height="297"/>
</customView>
<splitView autosaveName="mainWindowSplitView" dividerStyle="thin" vertical="YES" translatesAutoresizingMaskIntoConstraints="NO" id="4680" customClass="VLCMainWindowSplitView">
<rect key="frame" x="0.0" y="0.0" width="716" height="297"/>
<subviews>
<customView id="4681">
<rect key="frame" x="0.0" y="0.0" width="238" height="297"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<scrollView focusRingType="none" autohidesScrollers="YES" horizontalLineScroll="20" horizontalPageScroll="10" verticalLineScroll="20" verticalPageScroll="10" hasHorizontalScroller="NO" usesPredominantAxisScrolling="NO" translatesAutoresizingMaskIntoConstraints="NO" id="4713">
<rect key="frame" x="0.0" y="0.0" width="238" height="297"/>
<clipView key="contentView" drawsBackground="NO" id="3dd-Re-96d">
<rect key="frame" x="1" y="1" width="236" height="295"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<outlineView focusRingType="none" verticalHuggingPriority="750" allowsExpansionToolTips="YES" columnAutoresizingStyle="lastColumnOnly" selectionHighlightStyle="sourceList" columnReordering="NO" multipleSelection="NO" emptySelection="NO" autosaveColumns="NO" rowHeight="20" indentationPerLevel="14" autoresizesOutlineColumn="YES" outlineTableColumn="4717" id="4714" customClass="PXSourceList">
<rect key="frame" x="0.0" y="0.0" width="236" height="295"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES"/>
<size key="intercellSpacing" width="3" height="0.0"/>
<color key="backgroundColor" name="_sourceListBackgroundColor" catalog="System" colorSpace="catalog"/>
<color key="gridColor" name="gridColor" catalog="System" colorSpace="catalog"/>
<tableColumns>
<tableColumn identifier="" editable="NO" width="200" minWidth="118" maxWidth="200" id="4717">
<tableHeaderCell key="headerCell" lineBreakMode="truncatingTail" borderStyle="border">
<font key="font" metaFont="smallSystem"/>
<color key="textColor" name="headerTextColor" catalog="System" colorSpace="catalog"/>
<color key="backgroundColor" white="0.33333299" alpha="1" colorSpace="calibratedWhite"/>
</tableHeaderCell>
<textFieldCell key="dataCell" lineBreakMode="truncatingTail" title="Text Cell" id="4718">
<font key="font" metaFont="smallSystem"/>
<color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
<color key="backgroundColor" name="controlBackgroundColor" catalog="System" colorSpace="catalog"/>
</textFieldCell>
<tableColumnResizingMask key="resizingMask" resizeWithTable="YES" userResizable="YES"/>
</tableColumn>
</tableColumns>
</outlineView>
</subviews>
<nil key="backgroundColor"/>
</clipView>
<scroller key="horizontalScroller" hidden="YES" verticalHuggingPriority="750" horizontal="YES" id="4715">
<rect key="frame" x="-100" y="-100" width="212" height="15"/>
<autoresizingMask key="autoresizingMask"/>
</scroller>
<scroller key="verticalScroller" hidden="YES" verticalHuggingPriority="750" horizontal="NO" id="4716">
<rect key="frame" x="183" y="1" width="16" height="0.0"/>
<autoresizingMask key="autoresizingMask"/>
</scroller>
</scrollView>
</subviews>
<constraints>
<constraint firstItem="4713" firstAttribute="leading" secondItem="4681" secondAttribute="leading" id="8mO-ZP-3Lu"/>
<constraint firstItem="4713" firstAttribute="top" secondItem="4681" secondAttribute="top" id="ILk-Xg-Whk"/>
<constraint firstAttribute="trailing" secondItem="4713" secondAttribute="trailing" id="e08-zV-V9G"/>
<constraint firstAttribute="bottom" secondItem="4713" secondAttribute="bottom" id="rai-cS-eX9"/>
</constraints>
</customView>
<customView id="4682">
<rect key="frame" x="239" y="0.0" width="477" height="297"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<customView translatesAutoresizingMaskIntoConstraints="NO" id="gff-CR-TiL" userLabel="Header View">
<rect key="frame" x="0.0" y="274" width="477" height="23"/>
<subviews>
<imageView translatesAutoresizingMaskIntoConstraints="NO" id="4692">
<rect key="frame" x="0.0" y="-4" width="477" height="27"/>
<imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageAlignment="top" imageScaling="axesIndependently" image="topbar_background" id="4693"/>
</imageView>
<textField verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="5610">
<rect key="frame" x="6" y="5" width="33" height="14"/>
<textFieldCell key="cell" controlSize="small" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="Label" id="5611">
<font key="font" metaFont="smallSystem"/>
<color key="textColor" name="highlightColor" catalog="System" colorSpace="catalog"/>
<color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
</textFieldCell>
</textField>
<searchField wantsLayer="YES" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="5614">
<rect key="frame" x="319" y="2" width="150" height="19"/>
<constraints>
<constraint firstAttribute="width" constant="150" id="AM9-aF-RtQ"/>
</constraints>
<searchFieldCell key="cell" controlSize="small" scrollable="YES" lineBreakMode="clipping" selectable="YES" editable="YES" borderStyle="bezel" usesSingleLineMode="YES" bezelStyle="round" id="5615">
<font key="font" metaFont="smallSystem"/>
<color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
<color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
</searchFieldCell>
<connections>
<action selector="searchItem:" target="21" id="sT4-O5-9TC"/>
</connections>
</searchField>
</subviews>
<constraints>
<constraint firstAttribute="height" constant="23" id="4D5-Wx-lTu"/>
<constraint firstItem="5610" firstAttribute="centerY" secondItem="gff-CR-TiL" secondAttribute="centerY" id="6Do-lj-4Id"/>
<constraint firstItem="5610" firstAttribute="leading" secondItem="gff-CR-TiL" secondAttribute="leading" constant="8" id="S9e-Wf-aoV"/>
<constraint firstAttribute="trailing" secondItem="4692" secondAttribute="trailing" id="UQn-vu-gKi"/>
<constraint firstAttribute="trailing" secondItem="5614" secondAttribute="trailing" constant="8" id="Uhi-LR-5w5"/>
<constraint firstItem="4692" firstAttribute="leading" secondItem="gff-CR-TiL" secondAttribute="leading" id="mEC-jY-rBT"/>
<constraint firstItem="4692" firstAttribute="top" secondItem="gff-CR-TiL" secondAttribute="top" id="oo7-9w-9NY"/>
<constraint firstItem="5614" firstAttribute="centerY" secondItem="gff-CR-TiL" secondAttribute="centerY" id="rOp-VL-0qH"/>
<constraint firstAttribute="bottom" secondItem="4692" secondAttribute="bottom" constant="-4" id="yjP-gD-5lR"/>
</constraints>
</customView>
<customView translatesAutoresizingMaskIntoConstraints="NO" id="U2A-0F-udY" userLabel="Inner content view">
<rect key="frame" x="0.0" y="0.0" width="477" height="274"/>
<subviews>
<customView translatesAutoresizingMaskIntoConstraints="NO" id="4722" userLabel="Dropzone">
<rect key="frame" x="0.0" y="0.0" width="477" height="274"/>
<subviews>
<imageView translatesAutoresizingMaskIntoConstraints="NO" id="4731" customClass="VLCDropDisabledImageView">
<rect key="frame" x="0.0" y="0.0" width="477" height="274"/>
<imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="axesIndependently" image="dropzone-background" id="4732"/>
</imageView>
<customView translatesAutoresizingMaskIntoConstraints="NO" id="5605" customClass="VLCDragDropView">
<rect key="frame" x="0.0" y="0.0" width="477" height="274"/>
<subviews>
<box autoresizesSubviews="NO" borderType="none" title="Box" titlePosition="noTitle" transparent="YES" translatesAutoresizingMaskIntoConstraints="NO" id="4739">
<rect key="frame" x="89" y="21" width="300" height="230"/>
<view key="contentView" id="pxq-Tn-LtA">
<rect key="frame" x="0.0" y="0.0" width="300" height="230"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<imageView translatesAutoresizingMaskIntoConstraints="NO" id="4725" customClass="VLCDropDisabledImageView">
<rect key="frame" x="96" y="109" width="108" height="108"/>
<constraints>
<constraint firstAttribute="height" constant="108" id="X3R-xk-KyA"/>
<constraint firstAttribute="width" constant="108" id="zkM-JD-1vy"/>
</constraints>
<imageCell key="cell" refusesFirstResponder="YES" alignment="left" animates="YES" imageScaling="proportionallyDown" image="dropzone" id="4726"/>
</imageView>
<textField verticalHuggingPriority="749" translatesAutoresizingMaskIntoConstraints="NO" id="4727">
<rect key="frame" x="79" y="69" width="143" height="22"/>
<textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" alignment="center" title="Drop Media here" id="4728">
<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>
<button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="4729">
<rect key="frame" x="100" y="14" width="99" height="25"/>
<buttonCell key="cell" type="roundTextured" title="Open media..." bezelStyle="texturedRounded" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="4730">
<behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
<font key="font" metaFont="system"/>
</buttonCell>
<connections>
<action selector="dropzoneButtonAction:" target="21" id="4737"/>
</connections>
</button>
</subviews>
<constraints>
<constraint firstItem="4727" firstAttribute="centerX" secondItem="pxq-Tn-LtA" secondAttribute="centerX" id="6wv-tL-UA8"/>
<constraint firstItem="4729" firstAttribute="top" secondItem="4727" secondAttribute="bottom" constant="31" id="OQO-a8-vyM"/>
<constraint firstItem="4727" firstAttribute="top" secondItem="4725" secondAttribute="bottom" constant="18" id="asl-58-YTG"/>
<constraint firstItem="4725" firstAttribute="top" secondItem="pxq-Tn-LtA" secondAttribute="top" constant="13" id="fbL-o1-erB"/>
<constraint firstItem="4729" firstAttribute="centerX" secondItem="pxq-Tn-LtA" secondAttribute="centerX" id="jbI-J1-5bo"/>
<constraint firstAttribute="bottom" secondItem="4729" secondAttribute="bottom" constant="16" id="ush-Fv-vq7"/>
<constraint firstItem="4725" firstAttribute="centerX" secondItem="pxq-Tn-LtA" secondAttribute="centerX" id="zMM-Hx-gyn"/>
</constraints>
</view>
<constraints>
<constraint firstAttribute="width" constant="294" id="6bV-ld-5E6"/>
<constraint firstAttribute="height" constant="224" id="xIC-FI-Wya"/>
</constraints>
</box>
</subviews>
<constraints>
<constraint firstItem="4739" firstAttribute="centerX" secondItem="5605" secondAttribute="centerX" id="DRn-ZU-uOV"/>
<constraint firstItem="4739" firstAttribute="centerY" secondItem="5605" secondAttribute="centerY" id="bLg-B5-qh6"/>
</constraints>
</customView>
</subviews>
<constraints>
<constraint firstAttribute="trailing" secondItem="5605" secondAttribute="trailing" id="4lT-6R-Vts"/>
<constraint firstItem="4731" firstAttribute="top" secondItem="4722" secondAttribute="top" id="COu-Rz-Uv9"/>
<constraint firstItem="5605" firstAttribute="top" secondItem="4722" secondAttribute="top" id="EhV-L8-4be"/>
<constraint firstItem="4731" firstAttribute="leading" secondItem="4722" secondAttribute="leading" id="IWJ-rb-eYv"/>
<constraint firstAttribute="bottom" secondItem="4731" secondAttribute="bottom" id="UVM-80-u4f"/>
<constraint firstAttribute="trailing" secondItem="4731" secondAttribute="trailing" id="Zz7-Yo-mNE"/>
<constraint firstItem="5605" firstAttribute="leading" secondItem="4722" secondAttribute="leading" id="d47-SK-C7A"/>
<constraint firstAttribute="bottom" secondItem="5605" secondAttribute="bottom" id="fdA-1r-rKk"/>
</constraints>
</customView>
<scrollView focusRingType="none" autohidesScrollers="YES" horizontalLineScroll="17" horizontalPageScroll="10" verticalLineScroll="17" verticalPageScroll="10" usesPredominantAxisScrolling="NO" translatesAutoresizingMaskIntoConstraints="NO" id="4372">
<rect key="frame" x="0.0" y="0.0" width="477" height="274"/>
<clipView key="contentView" id="wTX-wO-asx">
<rect key="frame" x="1" y="0.0" width="475" height="273"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<outlineView focusRingType="none" verticalHuggingPriority="750" allowsExpansionToolTips="YES" columnAutoresizingStyle="reverseSequential" alternatingRowBackgroundColors="YES" autosaveColumns="NO" rowHeight="15" headerView="4373" indentationPerLevel="16" autoresizesOutlineColumn="YES" outlineTableColumn="4380" id="4376" customClass="VLCPlaylistView">
<rect key="frame" x="0.0" y="0.0" width="475" height="250"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<size key="intercellSpacing" width="3" height="2"/>
<color key="backgroundColor" name="controlBackgroundColor" catalog="System" colorSpace="catalog"/>
<tableViewGridLines key="gridStyleMask" vertical="YES"/>
<color key="gridColor" name="gridColor" catalog="System" colorSpace="catalog"/>
<tableColumns>
<tableColumn identifier="status" width="18" minWidth="18" maxWidth="18" id="4380">
<tableHeaderCell key="headerCell" lineBreakMode="truncatingTail" borderStyle="border" alignment="left">
<font key="font" metaFont="smallSystem"/>
<color key="textColor" name="headerTextColor" catalog="System" colorSpace="catalog"/>
<color key="backgroundColor" name="headerColor" catalog="System" colorSpace="catalog"/>
</tableHeaderCell>
<imageCell key="dataCell" controlSize="small" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyDown" id="4381"/>
<tableColumnResizingMask key="resizingMask" resizeWithTable="YES" userResizable="YES"/>
</tableColumn>
</tableColumns>
</outlineView>
</subviews>
</clipView>
<scroller key="horizontalScroller" hidden="YES" verticalHuggingPriority="750" horizontal="YES" id="4374">
<rect key="frame" x="1" y="234" width="0.0" height="16"/>
<autoresizingMask key="autoresizingMask"/>
</scroller>
<scroller key="verticalScroller" hidden="YES" verticalHuggingPriority="750" horizontal="NO" id="4375">
<rect key="frame" x="386" y="23" width="16" height="0.0"/>
<autoresizingMask key="autoresizingMask"/>
</scroller>
<tableHeaderView key="headerView" id="4373">
<rect key="frame" x="0.0" y="0.0" width="475" height="23"/>
<autoresizingMask key="autoresizingMask"/>
</tableHeaderView>
</scrollView>
</subviews>
<constraints>
<constraint firstAttribute="bottom" secondItem="4372" secondAttribute="bottom" id="7nB-oh-n2V"/>
<constraint firstItem="4722" firstAttribute="leading" secondItem="U2A-0F-udY" secondAttribute="leading" id="FCe-Dh-MEG"/>
<constraint firstAttribute="trailing" secondItem="4722" secondAttribute="trailing" id="G8U-K8-Aao"/>
<constraint firstItem="4372" firstAttribute="top" secondItem="U2A-0F-udY" secondAttribute="top" id="TzQ-ic-Og9"/>
<constraint firstAttribute="bottom" secondItem="4722" secondAttribute="bottom" id="dSW-Uh-nP9"/>
<constraint firstItem="4372" firstAttribute="leading" secondItem="U2A-0F-udY" secondAttribute="leading" id="fZe-5h-83L"/>
<constraint firstAttribute="trailing" secondItem="4372" secondAttribute="trailing" id="ozJ-dU-Qw7"/>
<constraint firstItem="4722" firstAttribute="top" secondItem="U2A-0F-udY" secondAttribute="top" id="tIs-Fh-Jsd"/>
</constraints>
</customView>
<customView hidden="YES" translatesAutoresizingMaskIntoConstraints="NO" id="5260" userLabel="Podcast">
<rect key="frame" x="0.0" y="0.0" width="477" height="23"/>
<subviews>
<imageView translatesAutoresizingMaskIntoConstraints="NO" id="5261">
<rect key="frame" x="0.0" y="-4" width="477" height="27"/>
<imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="axesIndependently" image="topbar_background" id="5262"/>
</imageView>
<button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="5263">
<rect key="frame" x="5" y="3" width="67" height="17"/>
<buttonCell key="cell" type="roundRect" title="Subscribe" bezelStyle="roundedRect" alignment="center" controlSize="small" borderStyle="border" inset="2" id="5264">
<behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
<font key="font" metaFont="smallSystem"/>
</buttonCell>
<connections>
<action selector="addPodcast:" target="21" id="5299"/>
</connections>
</button>
<button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="5302">
<rect key="frame" x="392" y="3" width="81" height="17"/>
<buttonCell key="cell" type="roundRect" title="Unsubscribe" bezelStyle="roundedRect" alignment="center" controlSize="small" borderStyle="border" inset="2" id="5303">
<behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
<font key="font" metaFont="smallSystem"/>
</buttonCell>
<connections>
<action selector="removePodcast:" target="21" id="5334"/>
</connections>
</button>
</subviews>
<constraints>
<constraint firstAttribute="trailing" secondItem="5261" secondAttribute="trailing" id="1nM-pX-AJn"/>
<constraint firstAttribute="bottom" secondItem="5261" secondAttribute="bottom" constant="-4" id="2BV-hb-uw2"/>
<constraint firstItem="5261" firstAttribute="top" secondItem="5260" secondAttribute="top" id="A6X-Wg-BQE"/>
<constraint firstItem="5302" firstAttribute="centerY" secondItem="5260" secondAttribute="centerY" id="FDB-Ao-9mv"/>
<constraint firstAttribute="trailing" secondItem="5302" secondAttribute="trailing" constant="4" id="KJC-Ja-hJ4"/>
<constraint firstItem="5261" firstAttribute="leading" secondItem="5260" secondAttribute="leading" id="T1s-FQ-h2g"/>
<constraint firstItem="5263" firstAttribute="leading" secondItem="5260" secondAttribute="leading" constant="5" id="WZN-5t-aG1"/>
<constraint firstAttribute="height" constant="23" id="f1Z-p5-sev"/>
<constraint firstItem="5263" firstAttribute="centerY" secondItem="5260" secondAttribute="centerY" id="tHx-Kh-uf3"/>
</constraints>
</customView>
</subviews>
<constraints>
<constraint firstItem="5260" firstAttribute="top" secondItem="U2A-0F-udY" secondAttribute="bottom" priority="1" id="AIy-oz-19u"/>
<constraint firstAttribute="trailing" secondItem="U2A-0F-udY" secondAttribute="trailing" id="BB8-la-xdJ"/>
<constraint firstItem="gff-CR-TiL" firstAttribute="top" secondItem="4682" secondAttribute="top" id="MHI-aR-Ycf"/>
<constraint firstAttribute="trailing" secondItem="5260" secondAttribute="trailing" id="XeB-D8-G5P"/>
<constraint firstItem="U2A-0F-udY" firstAttribute="top" secondItem="gff-CR-TiL" secondAttribute="bottom" id="ad4-k9-Lhq"/>
<constraint firstItem="U2A-0F-udY" firstAttribute="leading" secondItem="4682" secondAttribute="leading" id="e7f-Ia-ZvZ"/>
<constraint firstItem="5260" firstAttribute="leading" secondItem="4682" secondAttribute="leading" id="hMd-13-gV5"/>
<constraint firstAttribute="bottom" secondItem="5260" secondAttribute="bottom" id="hyT-jU-bih"/>
<constraint firstItem="gff-CR-TiL" firstAttribute="leading" secondItem="4682" secondAttribute="leading" id="vsZ-Ek-eBa"/>
<constraint firstAttribute="bottom" secondItem="U2A-0F-udY" secondAttribute="bottom" priority="750" id="wxj-fU-8zZ"/>
<constraint firstAttribute="trailing" secondItem="gff-CR-TiL" secondAttribute="trailing" id="z4y-R6-tbz"/>
</constraints>
</customView>
</subviews>
<holdingPriorities>
<real value="250"/>
<real value="250"/>
</holdingPriorities>
<connections>
<outlet property="delegate" destination="21" id="4842"/>
</connections>
</splitView>
</subviews>
<constraints>
<constraint firstItem="4680" firstAttribute="top" secondItem="3Bj-Gx-5iu" secondAttribute="top" id="5BD-QD-xZI"/>
<constraint firstAttribute="bottom" secondItem="4680" secondAttribute="bottom" id="DLo-m4-Paa"/>
<constraint firstItem="4665" firstAttribute="leading" secondItem="3Bj-Gx-5iu" secondAttribute="leading" id="P14-cO-Y3q"/>
<constraint firstAttribute="bottom" secondItem="4665" secondAttribute="bottom" id="Tzn-Qi-iVK"/>
<constraint firstItem="4680" firstAttribute="leading" secondItem="3Bj-Gx-5iu" secondAttribute="leading" id="hyB-Bw-1m8"/>
<constraint firstAttribute="trailing" secondItem="4665" secondAttribute="trailing" id="lec-La-MnM"/>
<constraint firstItem="4665" firstAttribute="top" secondItem="3Bj-Gx-5iu" secondAttribute="top" id="nz6-sf-xgK"/>
<constraint firstAttribute="trailing" secondItem="4680" secondAttribute="trailing" id="tFU-RQ-RnY"/>
</constraints>
</customView>
<customView translatesAutoresizingMaskIntoConstraints="NO" id="4756" customClass="VLCBottomBarView">
......@@ -643,17 +342,7 @@
</constraints>
</view>
<connections>
<outlet property="categoryLabel" destination="5610" id="28H-0K-uf4"/>
<outlet property="controlsBar" destination="5339" id="5624"/>
<outlet property="dropzoneBox" destination="4739" id="3sx-Uq-aFL"/>
<outlet property="dropzoneButton" destination="4729" id="uUO-5x-qmU"/>
<outlet property="dropzoneImageView" destination="4725" id="Ck9-vp-aDM"/>
<outlet property="dropzoneLabel" destination="4727" id="HkS-xv-7B6"/>
<outlet property="dropzoneView" destination="4722" id="a41-TD-aJs"/>
<outlet property="outlineView" destination="4376" id="92d-4j-4PK"/>
<outlet property="playlistScrollView" destination="4372" id="QDP-7m-wKJ"/>
<outlet property="podcastAddButton" destination="5263" id="Rg8-kX-6dU"/>
<outlet property="podcastRemoveButton" destination="5302" id="T6b-Y8-Usc"/>
<outlet property="podcastSubscribeCancelButton" destination="5268" id="nSd-2J-TCb"/>
<outlet property="podcastSubscribeOkButton" destination="5269" id="vHf-fh-21u"/>
<outlet property="podcastSubscribeSubtitle" destination="5274" id="wLI-Bk-rB1"/>
......@@ -666,14 +355,6 @@
<outlet property="podcastUnsubscribePopUpButton" destination="5319" id="dnR-ci-Uv7"/>
<outlet property="podcastUnsubscribeSubtitle" destination="5310" id="oMV-ik-riY"/>
<outlet property="podcastUnsubscribeWindow" destination="5305" id="9yb-CN-b5O"/>
<outlet property="podcastView" destination="5260" id="gOv-Pi-fkF"/>
<outlet property="searchField" destination="5614" id="Qkl-Wo-cAe"/>
<outlet property="sidebarScrollView" destination="4713" id="7Th-UT-wuq"/>
<outlet property="sidebarView" destination="4714" id="Hsb-LW-VTd"/>
<outlet property="splitView" destination="4680" id="30m-4q-XzK"/>
<outlet property="splitViewLeft" destination="4681" id="ryK-3z-wuu"/>
<outlet property="splitViewRight" destination="4682" id="REX-fd-CCP"/>
<outlet property="tableViewToPodcastConstraint" destination="AIy-oz-19u" id="NaG-yj-Yoh"/>
<outlet property="videoView" destination="4665" id="5622"/>
<outlet property="videoViewBottomConstraint" destination="ZVn-EJ-9CG" id="8F2-BP-yVS"/>
</connections>
......@@ -711,7 +392,7 @@
<windowStyleMask key="styleMask" titled="YES"/>
<windowPositionMask key="initialPositionMask" leftStrut="YES" rightStrut="YES" topStrut="YES" bottomStrut="YES"/>
<rect key="contentRect" x="265" y="520" width="612" height="157"/>
<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="777"/>
<value key="minSize" type="size" width="612" height="157"/>
<value key="maxSize" type="size" width="612" height="159"/>
<view key="contentView" id="5266">
......@@ -791,7 +472,7 @@ Gw
<windowStyleMask key="styleMask" titled="YES"/>
<windowPositionMask key="initialPositionMask" leftStrut="YES" rightStrut="YES" topStrut="YES" bottomStrut="YES"/>
<rect key="contentRect" x="265" y="520" width="612" height="156"/>
<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="777"/>
<value key="minSize" type="size" width="612" height="156"/>
<value key="maxSize" type="size" width="612" height="159"/>
<view key="contentView" id="5306">
......@@ -878,8 +559,6 @@ Gw
<resources>
<image name="backward-6btns" width="28" height="23"/>
<image name="backward-6btns-pressed" width="28" height="23"/>
<image name="dropzone" width="112" height="112"/>
<image name="dropzone-background" width="4" height="4"/>
<image name="effects-double-buttons" width="29" height="23"/>
<image name="effects-double-buttons-pressed" width="29" height="23"/>
<image name="forward-6btns" width="28" height="23"/>
......@@ -900,7 +579,6 @@ Gw
<image name="shuffle-pressed" width="29" height="23"/>
<image name="stop" width="29" height="23"/>
<image name="stop-pressed" width="29" height="23"/>
<image name="topbar_background" width="1" height="27"/>
<image name="volume-high" width="13" height="11"/>
<image name="volume-low" width="5" height="11"/>
</resources>
......
......@@ -123,6 +123,12 @@
@property (weak) IBOutlet NSTextField *streamChannelLabel;
@property (weak) IBOutlet NSTextField *streamChannelField;
@property (weak) IBOutlet NSMatrix *streamSDPMatrix;
@property (weak) IBOutlet NSTextField *streamMountPointLabel;
@property (weak) IBOutlet NSTextField *streamMountPointField;
@property (weak) IBOutlet NSTextField *streamUsernameLabel;
@property (weak) IBOutlet NSTextField *streamUsernameField;
@property (weak) IBOutlet NSTextField *streamPasswordLabel;
@property (weak) IBOutlet NSTextField *streamPasswordField;
@property (weak) IBOutlet NSButton *streamSDPFileBrowseButton;
@property (weak) IBOutlet NSTextField *streamSDPLabel;
@property (weak) IBOutlet NSTextField *streamSDPField;
......
......@@ -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];
......
......@@ -50,33 +50,29 @@
#import "VLCVoutWindowController.h"
@interface VLCMainWindow() <PXSourceListDataSource, PXSourceListDelegate, NSOutlineViewDataSource, NSOutlineViewDelegate, NSWindowDelegate, NSAnimationDelegate, NSSplitViewDelegate>
@interface VLCMainWindow() <PXSourceListDataSource, PXSourceListDelegate, NSOutlineViewDataSource, NSOutlineViewDelegate, NSWindowDelegate, NSAnimationDelegate>
{
BOOL videoPlaybackEnabled;
BOOL dropzoneActive;
BOOL splitViewRemoved;
BOOL minimizedView;
BOOL b_video_playback_enabled;
BOOL b_dropzone_active;
BOOL b_splitview_removed;
BOOL b_minimized_view;
CGFloat f_lastSplitViewHeight;
CGFloat f_lastLeftSplitViewWidth;
NSMutableArray *o_sidebaritems;
/* this is only true, when we have NO video playing inside the main window */
BOOL b_podcastView_displayed;
NSRect frameBeforePlayback;
}
- (void)makeSplitViewVisible;
- (void)makeSplitViewHidden;
- (void)showPodcastControls;
- (void)hidePodcastControls;
@end
static const float f_min_window_height = 307.;
......@@ -148,7 +144,6 @@ static const float f_min_window_height = 307.;
NSNotificationCenter *defaultCenter = [NSNotificationCenter defaultCenter];
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
BOOL splitViewShouldBeHidden = NO;
[self setDelegate:self];
[self setRestorable:NO];
......@@ -165,9 +160,7 @@ static const float f_min_window_height = 307.;
[playlist setPlaylistHeaderView:_outlineView.headerView];
[self setNextResponder:playlist];
// (Re)load sidebar for the first time and select first item
[self reloadSidebar];
[_sidebarView selectRowIndexes:[NSIndexSet indexSetWithIndex:1] byExtendingSelection:NO];
/*
......@@ -190,27 +183,11 @@ static const float f_min_window_height = 307.;
[_dropzoneButton.cell accessibilitySetOverrideValue:_NS("Open a dialog to select the media to play")
forAttribute:NSAccessibilityDescriptionAttribute];
// Podcast view
[_podcastAddButton setTitle:_NS("Subscribe")];
[_podcastRemoveButton setTitle:_NS("Unsubscribe")];
// Podcast subscribe window
[_podcastSubscribeTitle setStringValue:_NS("Subscribe to a podcast")];
[_podcastSubscribeSubtitle setStringValue:_NS("Enter URL of the podcast to subscribe to:")];
[_podcastSubscribeOkButton setTitle:_NS("Subscribe")];
[_podcastSubscribeCancelButton setTitle:_NS("Cancel")];
// Podcast unsubscribe window
[_podcastUnsubscirbeTitle setStringValue:_NS("Unsubscribe from a podcast")];
[_podcastUnsubscribeSubtitle setStringValue:_NS("Select the podcast you would like to unsubscribe from:")];
[_podcastUnsubscribeOkButton setTitle:_NS("Unsubscribe")];
[_podcastUnsubscribeCancelButton setTitle:_NS("Cancel")];
/* interface builder action */
CGFloat f_threshold_height = f_min_video_height + [self.controlsBar height];
if ([[self contentView] frame].size.height < f_threshold_height)
splitViewShouldBeHidden = YES;
// Set that here as IB seems to be buggy
[self setContentMinSize:NSMakeSize(604., f_min_window_height)];
......@@ -222,7 +199,6 @@ static const float f_min_window_height = 307.;
if (![defaults objectForKey:@"VLCFirstRun"]) {
[defaults setObject:[NSDate date] forKey:@"VLCFirstRun"];
[_sidebarView expandItem:nil expandChildren:YES];
NSAlert *albumArtAlert = [NSAlert alertWithMessageText:_NS("Check for album art and metadata?") defaultButton:_NS("Enable Metadata Retrieval") alternateButton:_NS("No, Thanks") otherButton:nil informativeTextWithFormat:@"%@",_NS("VLC can check online for album art and metadata to enrich your playback experience, e.g. by providing track information when playing Audio CDs. To provide this functionality, VLC will send information about your contents to trusted services in an anonymized form.")];
NSInteger returnValue = [albumArtAlert runModal];
......@@ -230,17 +206,10 @@ static const float f_min_window_height = 307.;
}
[_playlistScrollView setBorderType:NSNoBorder];
[_sidebarScrollView setBorderType:NSNoBorder];
[defaultCenter addObserver: self selector: @selector(someWindowWillClose:) name: NSWindowWillCloseNotification object: nil];
[defaultCenter addObserver: self selector: @selector(someWindowWillMiniaturize:) name: NSWindowWillMiniaturizeNotification object:nil];
[defaultCenter addObserver: self selector: @selector(applicationWillTerminate:) name: NSApplicationWillTerminateNotification object: nil];
[defaultCenter addObserver: self selector: @selector(mainSplitViewDidResizeSubviews:) name: NSSplitViewDidResizeSubviewsNotification object:_splitView];
if (splitViewShouldBeHidden) {
[self hideSplitView:YES];
f_lastSplitViewHeight = 300;
}
/* sanity check for the window size */
NSRect frame = [self frame];
......@@ -254,163 +223,14 @@ static const float f_min_window_height = 307.;
if (var_InheritBool(pl_Get(getIntf()), "fullscreen"))
[self.controlsBar setFullscreenState:YES];
/* restore split view */
f_lastLeftSplitViewWidth = 200;
[[[VLCMain sharedInstance] mainMenu] updateSidebarMenuItem: ![_splitView isSubviewCollapsed:_splitViewLeft]];
}
#pragma mark -
#pragma mark appearance management
- (void)reloadSidebar
{
BOOL isAReload = NO;
if (o_sidebaritems)
isAReload = YES;
o_sidebaritems = [[NSMutableArray alloc] init];
SideBarItem *libraryItem = [SideBarItem itemWithTitle:_NS("LIBRARY") identifier:@"library"];
SideBarItem *playlistItem = [SideBarItem itemWithTitle:_NS("Playlist") identifier:@"playlist"];
[playlistItem setIcon: imageFromRes(@"sidebar-playlist")];
SideBarItem *medialibraryItem = [SideBarItem itemWithTitle:_NS("Media Library") identifier:@"medialibrary"];
[medialibraryItem setIcon: imageFromRes(@"sidebar-playlist")];
SideBarItem *mycompItem = [SideBarItem itemWithTitle:_NS("MY COMPUTER") identifier:@"mycomputer"];
SideBarItem *devicesItem = [SideBarItem itemWithTitle:_NS("DEVICES") identifier:@"devices"];
SideBarItem *lanItem = [SideBarItem itemWithTitle:_NS("LOCAL NETWORK") identifier:@"localnetwork"];
SideBarItem *internetItem = [SideBarItem itemWithTitle:_NS("INTERNET") identifier:@"internet"];
/* SD subnodes, inspired by the Qt intf */
char **ppsz_longnames = NULL;
int *p_categories = NULL;
char **ppsz_names = vlc_sd_GetNames(pl_Get(getIntf()), &ppsz_longnames, &p_categories);
if (!ppsz_names)
msg_Err(getIntf(), "no sd item found"); //TODO
char **ppsz_name = ppsz_names, **ppsz_longname = ppsz_longnames;
int *p_category = p_categories;
NSMutableArray *internetItems = [[NSMutableArray alloc] init];
NSMutableArray *devicesItems = [[NSMutableArray alloc] init];
NSMutableArray *lanItems = [[NSMutableArray alloc] init];
NSMutableArray *mycompItems = [[NSMutableArray alloc] init];
NSString *o_identifier;
for (; ppsz_name && *ppsz_name; ppsz_name++, ppsz_longname++, p_category++) {
o_identifier = toNSStr(*ppsz_name);
switch (*p_category) {
case SD_CAT_INTERNET:
[internetItems addObject: [SideBarItem itemWithTitle: _NS(*ppsz_longname) identifier: o_identifier]];
[[internetItems lastObject] setIcon: imageFromRes(@"sidebar-podcast")];
[[internetItems lastObject] setSdtype: SD_CAT_INTERNET];
break;
case SD_CAT_DEVICES:
[devicesItems addObject: [SideBarItem itemWithTitle: _NS(*ppsz_longname) identifier: o_identifier]];
[[devicesItems lastObject] setIcon: imageFromRes(@"sidebar-local")];
[[devicesItems lastObject] setSdtype: SD_CAT_DEVICES];
break;
case SD_CAT_LAN:
[lanItems addObject: [SideBarItem itemWithTitle: _NS(*ppsz_longname) identifier: o_identifier]];
[[lanItems lastObject] setIcon: imageFromRes(@"sidebar-local")];
[[lanItems lastObject] setSdtype: SD_CAT_LAN];
break;
case SD_CAT_MYCOMPUTER:
[mycompItems addObject: [SideBarItem itemWithTitle: _NS(*ppsz_longname) identifier: o_identifier]];
if (!strncmp(*ppsz_name, "video_dir", 9))
[[mycompItems lastObject] setIcon: imageFromRes(@"sidebar-movie")];
else if (!strncmp(*ppsz_name, "audio_dir", 9))
[[mycompItems lastObject] setIcon: imageFromRes(@"sidebar-music")];
else if (!strncmp(*ppsz_name, "picture_dir", 11))
[[mycompItems lastObject] setIcon: imageFromRes(@"sidebar-pictures")];
else
[[mycompItems lastObject] setIcon: [NSImage imageNamed:@"NSApplicationIcon"]];
[[mycompItems lastObject] setSdtype: SD_CAT_MYCOMPUTER];
break;
default:
msg_Warn(getIntf(), "unknown SD type found, skipping (%s)", *ppsz_name);
break;
}
free(*ppsz_name);
free(*ppsz_longname);
}
[mycompItem setChildren: [NSArray arrayWithArray: mycompItems]];
[devicesItem setChildren: [NSArray arrayWithArray: devicesItems]];
[lanItem setChildren: [NSArray arrayWithArray: lanItems]];
[internetItem setChildren: [NSArray arrayWithArray: internetItems]];
free(ppsz_names);
free(ppsz_longnames);
free(p_categories);
[libraryItem setChildren: [NSArray arrayWithObjects:playlistItem, medialibraryItem, nil]];
[o_sidebaritems addObject: libraryItem];
if ([mycompItem hasChildren])
[o_sidebaritems addObject: mycompItem];
if ([devicesItem hasChildren])
[o_sidebaritems addObject: devicesItem];
if ([lanItem hasChildren])
[o_sidebaritems addObject: lanItem];
if ([internetItem hasChildren])
[o_sidebaritems addObject: internetItem];
[_sidebarView reloadData];
[_sidebarView setDropItem:playlistItem dropChildIndex:NSOutlineViewDropOnItemIndex];
[_sidebarView registerForDraggedTypes:[NSArray arrayWithObjects:NSFilenamesPboardType, @"VLCPlaylistItemPboardType", nil]];
[_sidebarView setAutosaveName:@"mainwindow-sidebar"];
[_sidebarView setDataSource:self];
[_sidebarView setDelegate:self];
[_sidebarView setAutosaveExpandedItems:YES];
[_sidebarView expandItem:libraryItem expandChildren:YES];
if (isAReload) {
[_sidebarView expandItem:nil expandChildren:YES];
}
}
// Show split view and hide the video view
- (void)makeSplitViewVisible
{
[self setContentMinSize: NSMakeSize(604., f_min_window_height)];
NSRect old_frame = [self frame];
CGFloat newHeight = [self minSize].height;
if (old_frame.size.height < newHeight) {
NSRect new_frame = old_frame;
new_frame.origin.y = old_frame.origin.y + old_frame.size.height - newHeight;
new_frame.size.height = newHeight;
[[self animator] setFrame:new_frame display:YES animate:YES];
}
[self.videoView setHidden:YES];
[_splitView setHidden:NO];
if (self.nativeFullscreenMode && [self fullscreen]) {
[self showControlsBar];
[self.fspanel setNonActive];
}
[self makeFirstResponder:_playlistScrollView];
}
// Hides the split view and makes the vout view in foreground
- (void)makeSplitViewHidden
{
[self setContentMinSize: NSMakeSize(604., f_min_video_height)];
[_splitView setHidden:YES];
[self.videoView setHidden:NO];
if (self.nativeFullscreenMode && [self fullscreen]) {
[self hideControlsBar];
[self.fspanel setActive];
}
if ([[self.videoView subviews] count] > 0)
[self makeFirstResponder: [[self.videoView subviews] firstObject]];
}
- (void)changePlaylistState:(VLCPlaylistStateEvent)event
{
// Beware, this code is really ugly
msg_Dbg(getIntf(), "toggle playlist from state: removed splitview %i, minimized view %i. Event %i", b_splitview_removed, b_minimized_view, event);
msg_Dbg(getIntf(), "toggle playlist from state: minimized view %i. Event %i", b_minimized_view, event);
if (![self isVisible] && event == psUserMenuEvent) {
[self makeKeyAndOrderFront: nil];
return;
......@@ -433,7 +253,7 @@ static const float f_min_window_height = 307.;
return;
}
if (!(self.nativeFullscreenMode && self.fullscreen) && !b_splitview_removed && ((b_have_alt_key && b_activeVideo)
if (!(self.nativeFullscreenMode && self.fullscreen) && ((b_have_alt_key && b_activeVideo)
|| (self.nonembedded && event == psUserEvent)
|| (!b_activeVideo && event == psUserEvent)
|| (b_minimized_view && event == psVideoStartedOrStoppedEvent))) {
......@@ -441,34 +261,8 @@ static const float f_min_window_height = 307.;
// for stopping playback, resize through reset to previous frame
[self hideSplitView: event != psVideoStartedOrStoppedEvent];
b_minimized_view = NO;
} else {
if (b_splitview_removed) {
if (!self.nonembedded || (event == psUserEvent && self.nonembedded))
[self showSplitView: event != psVideoStartedOrStoppedEvent];
if (event != psUserEvent)
b_minimized_view = YES;
else
b_minimized_view = NO;
if (b_activeVideo)
b_restored = YES;
}
if (!self.nonembedded) {
if (([self.videoView isHidden] && b_activeVideo) || b_restored || (b_activeVideo && event != psUserEvent))
[self makeSplitViewHidden];
else
[self makeSplitViewVisible];
} else {
[_splitView setHidden: NO];
[_playlistScrollView setHidden: NO];
[self.videoView setHidden: YES];
[self showControlsBar];
}
}
msg_Dbg(getIntf(), "toggle playlist to state: removed splitview %i, minimized view %i", b_splitview_removed, b_minimized_view);
msg_Dbg(getIntf(), "toggle playlist to state: minimized view %i",