public interface

IDLNAServiceProvider

com.baidu.cyberplayer.dlna.IDLNAServiceProvider

Class Overview

DLNA控制端标准服务接口

功能说明: 上层APP必须通过该接口去控制远程Render的行为,并获取对应的状态更新通知

Summary

Nested Classes
interface IDLNAServiceProvider.IBrowseCallBack  
interface IDLNAServiceProvider.IBrowseFileItemsCallBack  
interface IDLNAServiceProvider.IDisableDLNACallBack  
interface IDLNAServiceProvider.IEnableDLNACallBack  
interface IDLNAServiceProvider.IGetMuteCallBack  
interface IDLNAServiceProvider.IGetSupportedProtocolsCallBack  
interface IDLNAServiceProvider.IGetVolumeCallBack  
interface IDLNAServiceProvider.IPauseCallBack  
interface IDLNAServiceProvider.IPlayCallBack  
interface IDLNAServiceProvider.ISeekCallBack  
interface IDLNAServiceProvider.ISelectRendererDeviceCallBack  
interface IDLNAServiceProvider.ISelectServerDeviceCallBack  
interface IDLNAServiceProvider.ISetMediaMetaDataCallBack  
interface IDLNAServiceProvider.ISetMediaURICallBack  
interface IDLNAServiceProvider.ISetMuteCallBack  
interface IDLNAServiceProvider.ISetSubSwitchCallBack  
interface IDLNAServiceProvider.ISetVolumeCallBack  
interface IDLNAServiceProvider.IStopCallBack  
Public Methods
abstract boolean addDeviceChangeListener(DLNADeviceChangeListener listener)
添加设备变动监听器

注意:只能添加一个事件监听器 ,null则卸载之前的监听器

abstract boolean addEventListener(DLNADeviceEventListener listener)
添加设备事件监听器

注意:只能添加一个事件监听器 ,null则卸载之前的监听器

abstract void browser(String objectId, String filter, int startIndex, int requestCount, String sortRule, IDLNAServiceProvider.IBrowseCallBack callback)
浏览MediaServer上的资源
abstract void browserFileItems(String objectId, String filter, int startIndex, int requestCount, String sortRule, IDLNAServiceProvider.IBrowseFileItemsCallBack callback)
浏览MediaServer上的文件资源
abstract void disableDLNA(IDLNAServiceProvider.IDisableDLNACallBack callback)
程序退出前调用该方法停止底层的DLNA服务,与激活操作对应
abstract void enableDLNA(IDLNAServiceProvider.IEnableDLNACallBack callback)
初始化完成后,调用该方法激活底层DLNA服务;一次运行,激活一次即可
abstract String getDeviceIP(String udn)
获取当前指定设备的IP
abstract Map<String, String> getDeviceMap(DLNADeviceType devType)
获取Device ID和名字的映射表
abstract String getMediaDuration()
获取Render的当前播放媒体的时长
abstract String getMediaPosition()
获取Render的当前媒体播放位置
abstract void getMuteStat(IDLNAServiceProvider.IGetMuteCallBack callback)
获取Render的静音状态
abstract String getRenderState()
获取当前的Render状态

注意:Render状态包括"Playing", "Stopped", "Transitioning", "No Media", "Paused"等

abstract String getSelectedRenderId()
获取当前绑定的RenderId
abstract String getSelectedRenderName()
获取当前绑定的Render Name
abstract String getSelectedServerId()
获取当前绑定的ServerId
abstract String getSelectedServerName()
获取当前绑定的Server Name
abstract void getSupportedProtocols(IDLNAServiceProvider.IGetSupportedProtocolsCallBack callback)
获取Render支持的媒体类型
abstract String getTrackName()
获取当前的正在播放的文件名
abstract void getVolume(IDLNAServiceProvider.IGetVolumeCallBack callback)
获取Render的当前播放音量

注意:音量值只是相对于该设备最大音量的百分比,0~100

abstract void initialize(String accessKey, String secretKey)
该方法用于初始化阶段的设置,没有进行设置或者设置不对后续操作将会失败
abstract void pause(IDLNAServiceProvider.IPauseCallBack callback)
通知远端Render暂停播放
abstract void play(IDLNAServiceProvider.IPlayCallBack callback)
通知远端Render开始播放
abstract void seek(String position, IDLNAServiceProvider.ISeekCallBack callback)
让Render从指定的媒体位置开始播放

注意:传入的postion请使用“00:00:00”这种格式

abstract void selectRenderDevice(String devId, IDLNAServiceProvider.ISelectRendererDeviceCallBack callback)
跟某个Render进行绑定
abstract void selectServerDevice(String devId, String searchPath, IDLNAServiceProvider.ISelectServerDeviceCallBack callback)
跟某个Media Server进行绑定
abstract void setMediaMetaData(AVMetaData metaData, IDLNAServiceProvider.ISetMediaMetaDataCallBack callback)
指定待播放媒体资源地址及其附加信息

注意:和setMediaURI二选其一即可

abstract void setMediaURI(String mediaURI, IDLNAServiceProvider.ISetMediaURICallBack callback)
指定待播放媒体资源地址

注意:此处不会对传入的资源地址作有效性检查,需要上层APP进行保证

abstract void setMuteStat(boolean isMute, IDLNAServiceProvider.ISetMuteCallBack callback)
设定Render的静音状态
abstract void setSubSwitch(boolean bOpened, IDLNAServiceProvider.ISetSubSwitchCallBack callback)
控制远端字幕开关
abstract void setVolume(int volume, IDLNAServiceProvider.ISetVolumeCallBack callback)
设置Render的当前音量

注意:音量值只是相对于该设备最大音量的百分比,0~100

abstract void stop(IDLNAServiceProvider.IStopCallBack callback)
通知远端Render停止播放

Public Methods

public abstract boolean addDeviceChangeListener (DLNADeviceChangeListener listener)

添加设备变动监听器

注意:只能添加一个事件监听器 ,null则卸载之前的监听器

Parameters
listener 实现了DeviceChangeListener的监听器实例
Returns
  • 添加成功则返回true;反之则返回false

public abstract boolean addEventListener (DLNADeviceEventListener listener)

添加设备事件监听器

注意:只能添加一个事件监听器 ,null则卸载之前的监听器

Parameters
listener 实现了DeviceEventListener的监听器实例
Returns
  • 添加成功则返回true;反之则返回false

public abstract void browser (String objectId, String filter, int startIndex, int requestCount, String sortRule, IDLNAServiceProvider.IBrowseCallBack callback)

浏览MediaServer上的资源

Parameters
objectId 资源id,0表示从顶级目录开始浏览
filter 资源过滤器,暂不支持
startIndex 列表从哪个资源开始,0表示从第一个开始
requestCount 请求资源的总数目,0表示请求该目录下所有资源
sortRule 返回列表的排序规则 暂不支持
Returns

public abstract void browserFileItems (String objectId, String filter, int startIndex, int requestCount, String sortRule, IDLNAServiceProvider.IBrowseFileItemsCallBack callback)

浏览MediaServer上的文件资源

Parameters
objectId 资源id,0表示从顶级目录开始浏览
filter 资源过滤器,"*"表示不过滤,暂不支持
startIndex 列表从哪个资源开始,0表示从第一个开始
requestCount 请求资源的总数目,0表示请求该目录下所有资源
sortRule 返回列表的排序规则 暂不支持
Returns

public abstract void disableDLNA (IDLNAServiceProvider.IDisableDLNACallBack callback)

程序退出前调用该方法停止底层的DLNA服务,与激活操作对应

Returns

public abstract void enableDLNA (IDLNAServiceProvider.IEnableDLNACallBack callback)

初始化完成后,调用该方法激活底层DLNA服务;一次运行,激活一次即可

Returns

public abstract String getDeviceIP (String udn)

获取当前指定设备的IP

Parameters
udn 设备的唯一标记
Returns
  • 返回设备的IP

public abstract Map<String, String> getDeviceMap (DLNADeviceType devType)

获取Device ID和名字的映射表

Parameters
devType 指定设备类型
Returns
  • 返回设备ID和名字构成的列表

public abstract String getMediaDuration ()

获取Render的当前播放媒体的时长

Returns
  • 返回媒体时长

public abstract String getMediaPosition ()

获取Render的当前媒体播放位置

Returns
  • 返回当前播放位置

public abstract void getMuteStat (IDLNAServiceProvider.IGetMuteCallBack callback)

获取Render的静音状态

Returns

public abstract String getRenderState ()

获取当前的Render状态

注意:Render状态包括"Playing", "Stopped", "Transitioning", "No Media", "Paused"等

Returns
  • 返回当前的Render状态

public abstract String getSelectedRenderId ()

获取当前绑定的RenderId

Returns
  • 返回Render Id

public abstract String getSelectedRenderName ()

获取当前绑定的Render Name

Returns
  • 返回Render name

public abstract String getSelectedServerId ()

获取当前绑定的ServerId

Returns
  • 返回Server Id

public abstract String getSelectedServerName ()

获取当前绑定的Server Name

Returns
  • 返回Server name

public abstract void getSupportedProtocols (IDLNAServiceProvider.IGetSupportedProtocolsCallBack callback)

获取Render支持的媒体类型

Returns

public abstract String getTrackName ()

获取当前的正在播放的文件名

Returns
  • 返回当前播放的文件名

public abstract void getVolume (IDLNAServiceProvider.IGetVolumeCallBack callback)

获取Render的当前播放音量

注意:音量值只是相对于该设备最大音量的百分比,0~100

Returns

public abstract void initialize (String accessKey, String secretKey)

该方法用于初始化阶段的设置,没有进行设置或者设置不对后续操作将会失败

Parameters
accessKey 使用百度开发者中心申请的AK
secretKey 使用百度开发者中心申请的SK
Returns

public abstract void pause (IDLNAServiceProvider.IPauseCallBack callback)

通知远端Render暂停播放

Returns

public abstract void play (IDLNAServiceProvider.IPlayCallBack callback)

通知远端Render开始播放

Returns

public abstract void seek (String position, IDLNAServiceProvider.ISeekCallBack callback)

让Render从指定的媒体位置开始播放

注意:传入的postion请使用“00:00:00”这种格式

Parameters
position 指定的播放位置
Returns

public abstract void selectRenderDevice (String devId, IDLNAServiceProvider.ISelectRendererDeviceCallBack callback)

跟某个Render进行绑定

Parameters
devId 待绑定的Render的设备名
Returns

public abstract void selectServerDevice (String devId, String searchPath, IDLNAServiceProvider.ISelectServerDeviceCallBack callback)

跟某个Media Server进行绑定

Parameters
devId 待绑定的Media Server的ID
searchPath 设定搜索目录
Returns

public abstract void setMediaMetaData (AVMetaData metaData, IDLNAServiceProvider.ISetMediaMetaDataCallBack callback)

指定待播放媒体资源地址及其附加信息

注意:和setMediaURI二选其一即可

Parameters
metaData 媒体资源相关信息
Returns

public abstract void setMediaURI (String mediaURI, IDLNAServiceProvider.ISetMediaURICallBack callback)

指定待播放媒体资源地址

注意:此处不会对传入的资源地址作有效性检查,需要上层APP进行保证

Parameters
mediaURI 媒体资源地址
Returns

public abstract void setMuteStat (boolean isMute, IDLNAServiceProvider.ISetMuteCallBack callback)

设定Render的静音状态

Parameters
isMute true则设为静音;反之则恢复到有声状态
Returns

public abstract void setSubSwitch (boolean bOpened, IDLNAServiceProvider.ISetSubSwitchCallBack callback)

控制远端字幕开关

Parameters
bOpened true则打开字幕;反之则关闭字幕
Returns

public abstract void setVolume (int volume, IDLNAServiceProvider.ISetVolumeCallBack callback)

设置Render的当前音量

注意:音量值只是相对于该设备最大音量的百分比,0~100

Parameters
volume 带设定的音量值
Returns

public abstract void stop (IDLNAServiceProvider.IStopCallBack callback)

通知远端Render停止播放

Returns