#----------------------------------------------------------------------------
# Profile for Samsung SMT-G7400 (a.k.a. UPC Horizon).
# See PS3.conf for a description of all possible configuration options.
#

#-----------------------------------------------------------------------------
# RENDERER INFORMATION
#

# RendererName: Determines the name that is displayed in the PMS user
# interface when this renderer connects.
RendererName = Samsung SMT-G7400

# RendererIcon: Determines the icon that is displayed in the PMS user
# interface when this renderer connects. By default, these icons are
# bundled with PMS in pms.jar, but they can easily be customised:
# http://www.ps3mediaserver.org/forum/viewtopic.php?f=6&t=3507&p=49536#p49536
RendererIcon = samsung-smt-g7400.png

#-----------------------------------------------------------------------------
# RENDERER RECOGNITION
#
# When a renderer connects, it sends a "User-Agent" header. PMS tries to
# match that header with all configuration profiles. If none of the profiles
# matches, the message "Unknown User-Agent:" will be displayed in the logs and
# PMS will switch to a default profile.
#
# Because matching involves all renderer configuration profiles, it is
# important to match as long a string as possible. This increases the chances
# that a match is unique. Version numbers are best avoided.
#
# To learn the exact headers of any renderer, set the logging level in
# "logback.xml" to "TRACE" and look for messages like "Received on socket:".
#
# ============================================================================
# The following identifying headers were detected:
#
# User-Agent: Linux/2.6.35 UPnP/1.0 NDS_MHF DLNADOC/1.50
# ============================================================================
#

# UserAgentSearch: Optional regular expression to detect a connected renderer.
# The expression is case insensitive. When the expression is empty User-Agent
# headers are not used, this is the default. Note that one renderer can use
# several different User-Agent headers.
#
# Examples:
#
# UserAgentSearch = Platinum/.*DLNADOC/|yxplayer2|MPlayer |NSPlayer/
# UserAgentSearch = Windows-Media-Player-DMS|Microsoft-Windows
#
# Ignoring the "UPnP/1.0" and "UPnP/1.0 DLNADOC/1.50" headers since they are
# too general, plus they can be detected from the additional header.
UserAgentSearch = NDS_MHF

# UserAgentAdditionalHeader: Optional additional HTTP header for better
# detection. When defined, PMS also considers this header when trying to find
# a match. Even when the standard UserAgentSearch match fails, this extra
# header can provide a positive match.
#UserAgentAdditionalHeader = 

# UserAgentAdditionalHeaderSearch: Regular expression to search for in the
# additional HTTP header.
#UserAgentAdditionalHeaderSearch = 

#-----------------------------------------------------------------------------
# BASIC CAPABILITIES
#
# This indicates to PMS what kind of media the renderer can handle. Files that
# the renderer cannot handle will be hidden from it.
#

# Video: Set to "true" if the renderer can play video.
Video = true

# Audio: Set to "true" if the renderer can play audio.
Audio = true

# Image: Set to "true" if the renderer can display images.
Image = true

#-----------------------------------------------------------------------------
# DLNA SETTINGS
#

# SeekByTime: Set to true to use the DLNA feature seek by time instead of by
# range.
SeekByTime = true

# DLNALocalizationRequired: Serve different flavors of localization in the
# DLNA parameters (PAL/NTSC, NA/EU/JP) to allow every world wide renderer to
# see the files. Important for Sony Bravia TVs.
DLNALocalizationRequired = false

# CBRVideoBitrate is useful for renderers without SeekByTime support. It does time2byte conversion to support FF/RW.
# Only possibility how to predict where we are when seeking is using CBR bitrate instead of VBR used by default
# Making CBR stream by MEnocder is 3 times slower than using VBR so count with it if you have poor computer!
# Speed can be hopefully optimized little bit in the future:
# http://www.ps3mediaserver.org/forum/viewtopic.php?f=14&t=8883&p=53706&hilit=ditlew#p53700
# http://www.ps3mediaserver.org/forum/viewtopic.php?f=11&t=11284&p=62765&hilit=1835#p62765
# CBRVideoBitrate=15000

# ByteToTimeseekRewindSeconds is used for finetuning so default is 0 
# ByteToTimeseekRewindSeconds=0

#-----------------------------------------------------------------------------
# MEDIAINFO
#

# MediaInfo: Set to "true" if PMS should parse files with MediaInfo. This will
# give PMS more accurate information, speed up browsing and prevent potential
# playback errors. It also enables the use of "Supported" to more accurately
# define the supported formats for the renderer.
MediaInfo = true

# CreateDLNATreeFaster: Use faster method to create the DLNA tree using the
# MediaInfo library. Since this is a UPnP specification violation, it is not
# supported by some renderers and false by default.
CreateDLNATreeFaster = true

#-----------------------------------------------------------------------------
# TRANSCODING AND MUXING CAPABILITIES
#
# It is very likely that a renderer cannot render all file formats. If this is
# the case, PMS should transcode or mux the file to a format that the renderer
# can display. This section defines the format that PMS should transcode or
# mux to.
#

# TranscodeVideo: Profile to use for video transcoding.
# One of the following:
#
#     MPEGPSAC3: MPEG-2 video, AC-3 audio, MPEG-PS container
#     MPEGTSAC3: MPEG-2 video, AC-3 audio, MPEG-TS container
#     WMV:       WMV2 video, WMA2 audio, ASF container
#
# XXX MPEGPSAC3 was previously named MPEGAC3. The old name is deprecated.
# XXX Currently only the MEncoder engine supports all 3 profiles.
# Other engines transcode video to the MPEGPSAC3 profile,
# regardless of this setting.
#
# The default value is MPEGPSAC3.
TranscodeVideo = MPEGPSAC3

# TranscodeAudio: Profile to use for audio transcoding.
# Currently supported: "LPCM", "MP3" or "WAV".
# Default: LPCM
TranscodeAudio = LPCM

# DefaultVBVBufSize: Whether or not to use the default DVD buffer size. Setting
# this to "false" means a greater bit rate and faster encoding, but it can
# generate incompatible videos dependent on the renderer.
DefaultVBVBufSize = false

# MuxH264ToMpegTS: Set to "true" if the media renderer supports H264 and MPEG2
# in a MPEGTS file. Ignored if MediaInfo = true.
MuxH264ToMpegTS = true

# MuxDTSToMpeg: Set to "true" if the media renderer supports DTS in a MPEG
# file. Ignored if MediaInfo = true.
MuxDTSToMpeg = false

# WrapDTSIntoPCM: Set to "true" if the media renderer supports DTS wrapped
# into LPCM in a MPEG file.
WrapDTSIntoPCM = true

# MuxLPCMToMpeg: Set to "true" if the media renderer supports LPCM in a MPEG
# file. Ignored if MediaInfo = true.
MuxLPCMToMpeg = true

# MaxVideoBitrateMbps: The maximum bit rate supported by the media renderer.
# Setting to "0" means unlimited.
# If computer is low on resources it is better to avoid using bandwidth limit which is much CPU demanding
# It is better to lower quality settings by defining "CustomMencoderQualitySettings".
# By lowering quality also bitrate is decreased but it is not so CPU aggresive so it is preferred to use it this way
MaxVideoBitrateMbps = 0

# MaxVideoWidth: Maximum width supported by the media renderer. Setting to "0"
# means unlimited. This setting is ignored for files matching "Supported"
# formats when MediaInfo = true.
MaxVideoWidth = 1920

# MaxVideoHeight: Maximum height supported by the media renderer. Setting to
# "0" means unlimited. This setting is ignored for files matching "Supported"
# formats when MediaInfo = true.
MaxVideoHeight = 1080

# H264Level41Limited: Set to "true" if the media renderer supports only H264
# L4.1 at most.
H264Level41Limited = true

# TranscodeAudioTo441kHz: Set to "true" if music files need to be resampled at
# 44.1kHz.
TranscodeAudioTo441kHz = false

# TranscodeFastStart: Set to "true" if the renderer has a short timeout delay
# and needs to receive transcoded video with minimal delay. If set to "false",
# PMS will take some time to buffer some of the transcoded video.
TranscodeFastStart = true

# TranscodedVideoFileSize: The amount of transcoded data is unknown at the
# time of transcoding. Still, some renderers expect a size for the video file
# to be returned. Possible values are:
#            0: No size is sent to the renderer (default value)
# 100000000000: Fake size of 100 GB is sent to the renderer.
#           -1: Specific value that works perfect for the PS3. It is against
#               the DLNA spec though.
TranscodedVideoFileSize = -1

# MimeTypesChanges: A list of mimetype transformations in the format
# "old/mime1=new/mime1|old/mime2=new/mime2|...". Ignored if MediaInfo = true.
#MimeTypesChanges = video/avi=video/x-divx

# TranscodeExtensions: Comma separated list of file extensions that are forced
# to be transcoded and never streamed. Best left empty if MediaInfo = true,
# and define "Supported" formats instead.
TranscodeExtensions =

# StreamExtensions: Comma separated list of file extensions that are forced
# to be streamed and never transcoded. Best left empty if MediaInfo = true,
# and define "Supported" formats instead.
StreamExtensions = m4v

# ForceJPGThumbnails: Some renderers require thumbnails to be represented as
# JPEGs (JPEG_TN) in the DLNA directory XML (e.g. Sony Bravia TVs and Blu-ray
# players). Set this to true to force PMS to use this representation. Note:
# this has no effect on thumbnail file formats or content-type headers.
ForceJPGThumbnails = true

# ChunkedTransfer: Some renderers are particular about the "Content-Length"
# headers in requests (e.g. Sony Blu-ray players). By default, PMS will send
# a "Content-Length" that refers to the total media size, even if the exact
# length is unknown. Default value is false. Set this option to true to omit
# sending a length when it is unknown.
ChunkedTransfer = false

# CustomMencoderQualitySettings: Overrides the MEncoder transcoding quality
# settings in PMS for this renderer. Default is empty, which means the PMS
# settings will be used.
CustomMencoderQualitySettings =

# CustomMencoderOptions: Overrides the MEncoder custom options in PMS for
# this renderer. Default is empty, which means the PMS
# settings will be used.
CustomMencoderOptions =

# SubtitleHttpHeader: Some devices recognize a custom HTTP header for
# retrieving the contents of a subtitles file. Set this option to the name of
# that custom header and PMS will send the URL for the subtitles file in that
# header (e.g. Samsung devices recognize the "CaptionInfo.sec" header).
# Default value is "", which means PMS will not send such header information.
SubtitleHttpHeader = CaptionInfo.sec

#-----------------------------------------------------------------------------
# Another useful hidden params and their default values if not defined:
#

# Display audio tag in TRANSCODE folder if defined in container (useful to find out correct audio track like commentary etc.)
# ShowAudioMetadata = true

# Display subtitle tag in TRANSCODE folder if defined in container (showing subtitles info like forced, full, documentary etc.)
# ShowSubMetadata = true

# Some renderers can't show length of DVD titles so it will add it directly to title name to be shown
# ShowDVDTitleDuration = false

# Specified extension will be added to every file shared by PMS
# UseSameExtension = null

# ????????????????????????????
# DLNAProfileChanges = null

# ????????????????????????????
# DLNAOrgPN = true

# ????????????????????????????
# MediaParserV2_ThumbnailGeneration = false

#-----------------------------------------------------------------------------
# IMAGES
#

# AutoExifRotate: Many cameras store information in the image file about the
# orientation of the camera while the picture was taken, allowing viewers to
# know which way was up. Set this option to "true" to allow PMS to rotate JPEG
# files based on EXIF information contained in the file, and relieve the
# renderer of that task.
AutoExifRotate = true

#-----------------------------------------------------------------------------
# SUPPORTED MEDIA FORMATS
#
# This section defines which media formats are supported by this renderer. If
# a file is supported and its mediainfo indicates that it falls within the
# capabilities of this renderer, PMS will stream the file to the renderer. All
# other files will be transcoded before being sent to the renderer.
#
# Each format that the renderer supports should result in a "Supported" line
# that defines the capabilities of the renderer. When MediaInfo = true, media
# files are parsed and their properties are matched against all "Supported"
# lines. If a value for a specific property cannot be parsed, that property
# is assumed to match.
#
# The order of the "Supported" lines matters: when multiple lines match, the
# first match is used.
#
# The media parser and this configuration file will recognize the following
# formats and codecs. Use lower case names only, regular expressions are
# supported. These are chosen from the most commonly used supported formats
# and codecs:
#
#        mpegps             (MPEG presentation stream, used in DVD Videos, VCDs, etc.)
#        mpegts             (MPEG transport stream, used in sat TV, Blu-rays, etc.)
#        wmv                (Windows Media Video, tag also used for asf files)
#        avi                (AVI container)
#        mp4                (ISOM/MPEG4 container, or MPEG4 codec)
#        mov                (Quicktime container, Apple)
#        flv                (Flash Video)
#        rm                 (Real Media, RMVB)
#        mkv                (Matroska)
#        wav                (WAVE file)
#        wavpac             (WavPack)
#        lpcm               (Linear PCM)
#        aac                (Advanced Audio Codec)
#        ac3                (Audio Coding 3)
#        mp3                (Mpeg Audio Layer 3)
#        mpa                (Mpeg Audio)
#        ogg                (Ogg Vorbis)
#        wma                (Windows Media Audio)
#        dts                (Digital Theater Systems)
#        dtshd              (Digital Theater Systems)
#        truehd             (TrueHD)
#        eac3               (Extended AC3)
#        atrac              (Atrac)
#        flac               (Free Lossless Audio Codec)
#        ape                (Monkey's Audio)
#        ra                 (Real Audio)
#        mpc                (MusePack)
#        aiff               (AIFF)
#        alac               (Apple Lossless)
#        dv                 (Digital Video)
#        mpeg1              (Codec used in VCD)
#        mpeg2              (Codec used in DVD Videos and HDTV)
#        divx               (DivX Video)
#        h264               (H264)
#        mjpeg              (M-JPEG)
#        vc1                (VC-1)
#        jpg                (JPEG)
#        png                (PNG)
#        gif                (GIF)
#        tiff               (TIFF)
#        bmp                (Bitmap)
#        und                (Undetermined, if the parser did not recognize one of above)
#
# Each of the "Supported" lines contains the following parameters separated by
# spaces or tabs:
#
#    f:    Regular expression to match the format of a file as parsed by the
#          MediaInfo library (see the list above). This parameter is mandatory.
#          Be careful when matching everything with ".+", the renderer must be
#          able to handle all formats.
#
#    v:    Regular expression to match the video codec of the file as parsed by
#          the MediaInfo library (see the list above).
#
#    a:    Regular expression to match the audio codec of the file as parsed by
#          the MediaInfo library (see the list above).
#
#    m:    The mime type to send to the renderer. Use of this parameter is
#          strongly recommended. If it is not set, an estimated value will be
#          assigned.
#
#    n:    The maximum number of audio channels used in the file as parsed by
#          the MediaInfo library.
#
#    s:    The maximum audio sample frequency used in the file as parsed by
#          the MediaInfo library, specified in Hertz.
#
#    b:    The maximum audio bit rate used in the file as parsed by the
#          MediaInfo library, specified in bits per second.
#
#    w:    The maximum video width used in the file as parsed by the MediaInfo
#          library, specified in pixels.
#
#    h:    The maximum video height used in the file as parsed by the MediaInfo
#          library, specified in pixels.
#
#    qpel: Quarter pixel codec setting in the file as parsed by the MediaInfo
#          library.
#
#    gmc:  The number of global motion compensation warp points in the file as
#          parsed by the MediaInfo library.
#
#
# ============================================================================
# From: http://certification.dlna.org/certs/REG47816707.pdf
#
# Image
#     JPEG_LRG
#     JPEG_MED
#     JPEG_SM
#     PNG_LRG
#
# Audio
#     AAC_ADTS_320
#     AAC_ISO_320
#     LPCM
#     MP3
#     WMABASE
#     WMAFULL
#
# Video
#     AVC_MP4_BL_CIF15_AAC_520
#     MPEG_PS_PAL
#     MPEG_TS_SD_EU
#     MPEG_TS_SD_EU_ISO
#     MPEG_TS_SD_EU_T
#     WMVHIGH_FULL
#     WMVMED_BASE
#     WMVMED_FULL
# ============================================================================
#

# [Supported video formats]:
Supported = f:mov	m:video/quicktime
Supported = f:mp4	m:video/mp4
Supported = f:mpegps|mpegts|mkv	m:video/mpeg
Supported = f:ogg	m:application/ogg
Supported = f:rm	m:application/vnd.rn-realmedia
Supported = f:wmv	m:video/x-ms-wmv

# [Supported audio formats]:
Supported = f:wav        a:dts|lpcm        n:6        s:48000        m:audio/wav
Supported = f:wav        n:2        s:48000        m:audio/wav
Supported = f:mp3        n:2        m:audio/mpeg
# Apple lossless not supported
Supported = f:aac        n:2        a:(?!alac).+        m:audio/x-m4a
Supported = f:wma        n:2        m:audio/x-ms-wma
Supported = f:atrac      n:2        m:audio/x-oma

# [Supported image formats]
Supported = f:jpg        m:image/jpeg
Supported = f:png        m:image/png
Supported = f:gif        m:image/gif
Supported = f:tiff       m:image/tiff

#-----------------------------------------------------------------------------