前言( Q+ p* A$ n4 @# S, t! W
由于nas下载影片较多,导致了203找影片需要翻页很多次,好在OPPO UDP-203的排序是按文件名(吐槽下先锋完全是乱序),OPPO UDP-203还是可以相对轻松翻到。但是很多种子命名都是乱来的,看文件名完全无法理解是什么影片(有做种需求,所以无法修改文件名),所以自行做了搜刮匹配数据后的海报墙。在每次看影片时需要先搜索到对应的文件名,再到播放器去寻找,还是比较麻烦。当发现机器有RS232接口时,瞬间找到了希望,官方很良心的提供了完整的操作文档,并且还提供了TCP协议文档《链接查看》,操作起来更加便捷。6 W( W5 A$ J8 Z+ P4 Y
本文最终实现效果为,在点击海报墙的同时 播放器自动播放影片。
3 Z- q4 e, S" v; t+ s E; i- M8 \# F0 Q- }5 ]
- T4 Z5 R7 M/ b7 z1 X* Z9 S# K# v
2 X9 K3 J7 |% F* n0 Z, o
OPPO RS-232 & IP 控制协议这部分协议提供了完整的操控方法,但无法满足我的需求,所以使用了APP的协议,细节可看到下一章节。 . ]" P3 U0 W" _8 `
播放器广播播放器联网后,会通过UDP每十秒的间隔向局域网内7624端口广播自己的连接信息(其中换行为\n) - Notify:OPPO Player Start: a3 B5 h+ h4 E3 E
- <div>Server IP:192.168.1.2) M& [" w! V3 F0 x
- Server Port:23
1 ?7 l, Z! |# M - Server Name:OPPO UDP-203</div>
复制代码 ' ]9 W; m5 J$ `
注:此处23端口为固定,且非Telnet 发送/接收指令消息体已#开头,\n结束 示例 - ASCII:#EJT\nHEX:23 45 4a 54 0a
复制代码 6 q# \- n5 r( d7 q! |1 m$ |8 C5 W3 G
发送后播放器会返回
; f( M6 d/ Q5 q% v. [2 [- ASCII:OK OPEN\nHEX:4f 4b 20 4f 50 45 4e 0a
复制代码 9 U/ y: S. Q( I3 O- p% z
按键类! J, I, W) s$ e
指令 | 遥控按键 | 功能 | 响应示例 | POW | POWER | 切换电源待机/开启 | OK ON
+ V4 r0 W% s- T, { L9 U- xOK OFF | EJT | OPEN | 弹出/收起碟仓 | OK OPEN, t. F! K( D! I) b k( }3 Z) f
OK CLOSE | PON | ON | Discrete on | OK ON | POF | OFF | Discrete off | OK OFF | DIM | DIMMER | 前面板显示屏变暗 | OK ON3 G, |( x A% _; w F5 T: {
OK DIM
+ u, ?3 _) v/ |, l; v$ }4 o) QOK OFF | PUR | PURE | 纯音频模式(无视频 | OK ON
' N" }$ ]4 ^. P9 BOK OFF | VUP | VOL + | 调大音量 | OK n (n是音量
0 P( z8 v: v _% H# i8 V) ^范围:0 – 100) | VDN | VOL - | 调小音量 | OK n (n是音量3 q+ y4 n8 o- {* c. N/ x
范围:0 – 100) | MUT | MUTE | 静音 | OK MUTE
, f% }% [0 V' C& K5 i; f9 GOK UNMUTE | NU1 | 1 | 数字按键1 | OK | NU2 | 2 | 数字按键2 | OK | NU3 | 3 | 数字按键3 | OK | NU4 | 4 | 数字按键4 | OK | NU5 | 5 | 数字按键5 | OK | NU6 | 6 | 数字按键6 | OK | NU7 | 7 | 数字按键7 | OK | NU8 | 8 | 数字按键8 | OK | NU9 | 9 | 数字按键9 | OK | NU0 | 0 | 数字按键0 | OK | CLR | CLEAR | 清除数字输入 | OK | GOT | GOTO | Play from a specified location | OK | HOM | HOME | 进入主菜单 | OK | PUP | PAGE UP | 显示上一页 | OK | PDN | PAGE DOWN | 显示下一页 | OK | OSD | INFO | 显示/隐藏屏幕显示 | OK | TTL | TOP MENU | 显示BD顶部菜单或DVD标题 | OK | MNU | POP-UP MENU | 显示BD弹出菜单 | OK | NUP | Up Arrow | 上键 | OK | NLT | Left Arrow | 左键 | OK | NRT | Right Arrow | 右键 | OK | NDN | Down Arrow | 下键 | OK | SEL | ENTER | 确定 | OK | SET | SETUP | 进入播放器设置菜单 | OK | RET | RETURN | 返回上级菜单或模式 | OK | RED | RED | 红色功能按键 | OK | GRN | GREEN | 绿色功能按键 | OK | BLU | BLUE | 蓝色功能按键 | OK | YLW | YELLOW | 黄色功能按键 | OK | STP | STOP | 停止 | OK | PLA | PLAY | 开始 | OK | PAU | PAUSE | 暂停 | OK | PRE | PREV | Skip to previous | OK | REV | REV | 快退 | OK 1X | FWD | FWD | 快进 | OK 1X | NXT | NEXT | Skip to next | OK | AUD | AUDIO | 声音 | OK | SUB | SUBTITLE | 字幕 | OK | ANG | ANGLE | 改变摄像机角度 | OK a/b (a: 当前角度, D* C5 M' x( g6 U$ N$ U
b: 全部角度) | ZOM | ZOOM | Zoom in/out and adjust aspect
$ [: V, k8 [+ ?/ E3 w2 \) zratio | OK (zoom ratio text) | SAP | SAP | Turn on/off Secondary Audio
3 x2 G& l4 ]8 u) D8 AProgram | OK (音轨信息)1 T3 L& l, q& \" ^. V! T h
OK Off | ATB | AB REPLAY | 重复播放所选部分 | OK AOK A-B
. {9 f1 }" W: g' @/ lOK OFF | RPT | REPEAT | 重放 | OK Repeat Chapter
9 Z( ?% c( r& K. X' A2 f! N! y( aOK Repeat Title
. y: f1 M0 v: m" {) U! W, rOK OFF | PIP | PIP | 显示/隐藏画中画 | OK (PIP program info)6 z/ h: B% _# ~9 i& |, s
OK Off | HDM | RESOLUTION | 切换输出分辨率 | OK | SUH | SUBTITLE (按住) | 按住字幕键,进行字幕位移 | OK | OPT | OPTION | 显示/隐藏选项菜单 | OK | M3D | 3D | 显示/隐藏 2D转3D调整或3D调整菜单 | OK | SEH | PIC | 显示图片调整菜单 | OK | HDR | HDR | 显示 HDR 选择菜单 | OK | INH | INFO (按住) | 显示详细信息 | OK | RLH | RESOLUTION* r% b0 b5 n6 r
(按住) | 将分辨率设为自动 | OK | AVS | | Displaythe A/V Sync adjustment- q Y& O1 ]& o' D
menu | OK | GPA | | 无缝播放 | OK | NOP | | 空操作 | OK | SRC | INPUT | 显示输入菜单: R6 P9 C4 q' b# H3 B
例:#SRC followed by #NU1 | OK |
4 |- d) l1 [* e( {8 ? R+ T% ~; i查询类指令 | 功能 | 响应示例 | QVM | Query verbose mode | OK 00 P7 m; ]5 o/ t
OK 16 u8 Q3 h) e5 ^9 ?
OK 2
- A* e/ J1 i) C; ], T. } eOK 3 | QPW | 查询电源状态 | OK ON
5 m3 k! y+ p4 U( `3 @' @* S; BOK OFF | QVR | 查询固件版本 | OK UDP20X-xx-xxxx | QVL | 查询音量 | OK 100
- n+ Q0 k5 m `* O4 f3 s% mOK MUTE | QHD | 查询HDMI分辨率 | OK 480I; f" d) M; ]8 h/ |- s3 t" b* i
OK 480P+ c7 P2 C! O! j% `. m
OK 576I' Z; b2 c* S3 Z$ k, `) r
OK 576P
! S) }3 G9 A$ F) I4 ~OK 720P50
t& p/ x) u" fOK 720P60
/ V$ X ]2 M( aOK 1080I50' A# x* h0 F: \9 U4 ~
OK 1080I60
3 C" K5 b/ w% L/ c3 xOK 1080P24: t9 {: L4 S- u' U/ J8 o; e
OK 1080P50# M _6 |7 E3 u) w+ {" r
OK 1080P60
+ y5 w+ k1 P; A( L$ B9 JOK 1080PAUTO
6 D& s' z. v6 Z9 a% t( y8 W& @OK UHD24
# Y5 c' ?4 R4 R) i, U, _( D. L' WOK UHD50, q! m( _ x0 H" F$ R
OK UHD60
& V4 i2 h4 N$ z- wOK UHD_AUTO
( _9 w3 T6 {! E% L- A/ `9 tOK AUTO
5 v8 ~/ }9 V9 qOK Source Direct | QPL | 查询播放状态 | OK PLAY
1 ]0 ^& L3 L5 C pOK PAUSE
3 p* Z; s" I6 E0 d/ B5 m- @6 GOK STOP' W: e( o. e M, L7 |( O; \: S7 s, r% x
OK STEP
; e+ V. {7 H- c( h; f3 qOK FREV, e: ~! Q8 D5 I; l1 D; R" U# H
OK FFWD( ]- ?: Q+ C* |+ m- F9 p" O& T
OK SFWD# S' j& T8 |& J& D- ~0 h: v. x9 S: c
OK SREV
/ R: V' V$ k* _; s3 m; i; pOK SETUP
1 ^5 w8 l: k3 UOK HOME MENU
3 W, T8 N8 [/ xOK MEDIA CENTER8 R- M' P3 s) `1 u9 H* {1 \
OK SCREEN SAVER8 N8 `& ~) W" V) j' u
OK DISC MENU | QTK | Query Track/Title | OK 02/10 | QCH | 查询章节 | OK 03/03 | QTE | Query Track/Title elapsed time | OK 00:01:34 | QTR | Query Track/Title remaining time | OK 01:20:23 | QCE | Query Chapter elapsed time | OK 00:01:34 | QCR | Query Chapter remaining time | OK 00:12:22 | QEL | Query Total elapsed time | OK 00:05:12 | QRE | Query Total remaining time | OK 01:34:44 | QDT | Query disc type | OK BD-MV
c9 ]0 K: R1 H* c' COK DVD-VIDEO
" K7 y: s/ K+ w' P5 v" Z: eOK DVD-AUDIO2 u- t# | U" A3 g4 I5 ]0 Y2 C* U
OK SACD
. z2 L+ m3 e, J" L% j% ]8 T/ \OK CDDA0 `; C2 }' T. n( d) q5 o
OK DATA-DISC
$ `: G! R7 v$ X# s. q5 n/ cOK UHBD
6 x4 S t4 Q' ~OK NO-DISC
6 h; [4 S% L3 ^! i: D, }, t: m( qOK UNKNOW-DISC | QAT | Query audio type | OK DD 1/1, g# p+ I' \% m$ ?/ ]
OK DD 1/5 English4 q1 E, {; n1 |, @3 W- d* H4 e
OK DTS 2/5 English4 P# w9 r, k. M. ~. i4 u9 h$ p9 V
OK LPCM
- [7 S% @+ {4 P% P. ~ ~# TOK DTS-HD 1/4 English | QST | Query subtitle type | OK OFF% _* ]! m; h7 `/ I
OK 1/1 English | QSH | Query subtitle shift | OK -10
/ P: A; {! h3 Y6 Z" e0 z(valid returns are -10 .. 0 .. 10) | QOP | Query OSD position | OK 0
3 }' A9 V5 \) s8 m- P; W6 N( a, {(valid returns are 0 .. 5) | QRP | Query Repeat Mode | OK 00 Off$ w* l& a- t% Y# [7 J: C8 q
(OK followed by a repeat mode code and
' Y) Q$ {1 S; y% e9 f* v& j: Dtext:& j: x! t3 \2 N9 B4 C
00 Off
6 Q2 @- G% t9 i7 b" X01 Repeat One0 t6 W+ {+ N& F0 K- k
02 Repeat Chapter0 p+ I1 `& h5 r& ` N( L
03 Repeat All
5 w6 r3 H" A2 O04 Repeat Title
" C3 l. K+ w; Q1 l, O05 Shuffle: `1 s& d( ^$ J( m8 x2 J; ^
06 Random) | QZM | Query Zoom Mode | OK 00
3 u# V8 T. `7 m- E(OK followed by a zoom mode code:# U! m) {% }- k0 r3 y1 c8 }+ G
00 Off
' M# o" _" M# Z01 Stretch
% ]4 V4 f* N/ l. s02 Full
' t+ i7 {$ H- Z9 X2 q( Y03 Underscan
, V5 G( O% @ A9 V3 F: A04 1.2x
6 O: F$ w( a5 A1 s05 1.3x2 w8 _' \* A5 _: B$ t! J- X
06 1.5x& G! U. u2 J$ p+ L
07 2x
5 ^3 }+ u$ Y' G2 q) f* l' p08 3x; m( c/ k u8 k4 {! A g
09 4x3 M8 ]0 H$ a9 F1 q/ @
10 1/2( A* M, ^7 F! z$ \# M }% Y
11 1/3
% o% Z, r# O" r) ~12 1/4)
+ a& Y+ B+ E. K, n/ b6 \QHR Query HDR Setting
' ?' \9 r- a X4 P8 b, jOK Auto
/ m: y0 r3 a/ n# u7 m. qOK On
, ^' q6 S+ m; bOK Off
' f3 z8 V- R, eOK StripMetadata | Q3D | Query 3D Status | OK 2D
$ o+ d# y; M, s$ L- y8 \OK 3D V* G) U6 D' C3 u! c
(returns the actual video output status) | QHS | Query HDR Status | OK HDR
% b; v+ i) p: iOK SDR
' B# V: m2 e# i GOK DOV9 h2 m/ ?1 r; v8 Z9 Q# g# {& O5 N
(returns the actual video output status) | QIS | Query Input Source | OK 0 BD-PLAYER
6 g. G7 N3 t VOK 1 HDMI-IN$ J5 M o1 F( F% W5 ?7 B4 O& j* u
OK 2 ARC-HDMI-OUT
5 {6 v/ l0 L' a8 Z! T- ]$ z2 SOK 3 OPTICAL-IN
. K( J& {. T& ?# E. N, mOK 4 COAXIAL-IN1 `0 Z% m% X* V3 g& G( l( d' h
OK 5 USB-AUDIO-IN& n/ \3 l. Q: {7 |. L
(Return the currently selected input source) | QCD | Query CDDB number | QC1 OK XXYY/ K) c g: ?8 S, A
QC2 OK YYZZ. f" O, b L7 Q
ER INVALID( j4 O: n- M$ t# Y9 b
(OK followed by the CDDB number of the
8 t- A: f, ^2 K! }3 |8 F# A' B8 oCD being played) | QFT | Query media file format | OK FLAC' r. [+ p! v" b V: e9 o0 V
OK WAV
6 Q& y; u. O. i4 OOK MKV# @/ e, A U5 E* }' z0 a' l5 M
OK JPG
. z# q* n9 B% w$ F! A(OK followed by the media file format)
- \9 u% Q8 _8 ?3 g6 _, a! K& uER INVALID | QFN | Query media file name | OK Rocky Mou*.wav* T0 Z l' }( g9 {9 w
(OK followed by the file name)
: F$ F! Y; k: B* b" |& L/ q$ W) vER INVALID | QTN | Query track name | OK Rocky Mountain*
% V' q" s; n; c7 R(OK followed by the current track name)
$ m% u- X) N: h( b f. NER INVALID | QTA | Query track album | OK Rise And Fall, Rage*
- e( T4 _9 w$ l e; S# ~/ l( r2 k(OK followed by the current track album)
5 q( j! s9 } F5 VER INVALID | QTP | Query track performer | OK The Offspring
+ z: y/ `8 b. \6 h) Y- s+ a(OK followed by the current track% L9 S/ h9 [; y. K
performer)5 j/ O; I H R* k) b2 \9 `
ER INVALID | QDS | Query directory size | OK 120
' |2 I$ I3 }7 e3 Y- s v" S$ H3 Q(OK followed by the number of entries in
: J5 f! u8 m6 R$ }9 ]3 uthe current directory. This command is only
3 L- G& P5 D5 c, b# d* ivalid when the player is navigating a data0 B9 ~5 f' ^3 m% F# ~+ j% d
disc, USB drive or network share.)6 t, L! i/ D3 u. V( ~( r' _4 o/ V
ER INVALID | QAR | Query aspect ratio setting | OK 16WW (16:9 Wide)
& }/ }# j4 o8 U% |2 NOK 16AW (16:9 Wide Auto, currently wide)
( Y2 y% E$ b2 lOK 16A4 (16:9 Wide Auto, currently/ s# Z8 ^0 }' @' w
playing 4:3), M" z) i e+ F
OK 21M0 (21:9 Movable, currently full" f# Z% _- E4 ]+ `
screen mode): L8 A# S, M, W) j% [
OK 21M1 (21:9 Movable, currently playing* ]) X3 S4 k; H x, p, c
16:9 or 4:3 content). ^& N8 U9 ]7 y2 G) d4 }: Z% o
OK 21M2 (21:9 Movable, currently playing
0 [# l5 F' G: s% Y* b21:9 content)
0 a+ i4 \; w+ g* _2 h" xOK 21F0 (21:9 Fixed, currently full screen
5 o& d4 \. t! W8 B Z9 _1 |2 zmode)2 w# \! c9 k5 k" q& s
OK 21F1 (21:9 Fixed, currently playing' U) w4 Q1 c% Y0 W$ \+ x
16:9 or 4:3 content)2 \' f ?1 J: k
OK 21F2 (21:9 Fixed, currently playing6 Y2 c |1 b1 `# o; ~) Q J
21:9 content)
2 B" L% @0 C, x# f7 d" z5 YOK 21C0 (21:9 Cropped, currently full
% s. X/ {1 ]; ^1 fscreen mode)
4 g5 G# z6 s( e2 Z9 K0 B& GOK 21C1 (21:9 Cropped, currently playing7 X5 A0 X1 z& Z" v% q9 a
16:9 or 4:3 content)! a9 y+ G: \1 V$ d; N' V- V) x
OK 21C2 (21:9 Cropped, currently playing
8 |6 g% y+ \+ c0 s21;9 content) | ! B5 F8 r. j4 V, C6 X3 o
专家类指令 | 参数 | 功能 | 响应示例 | SVM | 0# ]3 V) E4 l* X
1 S; {/ X4 ?1 @# G
2& O7 I! }4 Z1 }6 ]" F/ l
3 | 0 – Set Verbose Mode to off
+ _% r3 F* ~4 f( F4 {# u1 – Not in use (for backwards
' x h5 X1 L+ [ ^6 S: w9 o% o9 Vcompatibility)
- L1 N* I! G2 C7 j( ^, E2 – Enable unsolicited status updates.
; g! _: H: D; {+ u D9 lOnly major status changes are. i7 p& m Z" T
reported.
, V, D* }" l: ?8 u9 Q9 E3 – Enable detailed status updates.
& J) T) l! R9 ?% A5 ~# W: s1 d' JWhen content is playing, the player5 m3 D1 b8 m7 g" ~. U* S
sends out playback time updates
% `" t+ n" u. v% X$ \) T D" `& Hevery second. | OK 01 r5 J& ~7 I0 r' X
OK 1
& d/ @, i2 D* ~. Z" v( T$ l! bOK 2) e: H$ f, Q4 Z# h
OK 3 | SHD | AUTO& h) A8 a# w4 O S
SRC3 K$ g; { T d/ h, r, j
UHD_AUTO
8 V1 `4 \5 r0 f8 G. QUHD241 ]9 x/ a! L* U3 e: ^9 Y, T
UHD50
. \: a7 R$ O* ], g2 T, ?UHD60' ^& J8 N$ T, ^% Z$ Z7 z/ f
1080P_AUTO
2 S3 t& E4 t! p9 L8 u1080P245 }& G' L) j& k+ |! \1 S+ B& s8 y0 j
1080P50
! H3 O" F5 I1 A1 u1080P60
8 s# W/ R1 k$ Y" {3 V8 B/ l1080I50; p! l% f1 J' w8 a5 }% p/ y$ E
1080I605 [; h I. V" N
720P50* t( D. V4 j- \- J/ m8 s
720P60: t% W- P) u" A! j! w8 x' O g
576P
: y* n+ U* R1 k8 ?: P576I0 C" w$ c$ ?) H' }. s2 P) `4 o
480P
1 O0 t, P* n6 Z- g- y5 j3 A# W9 ]480I | Set HDMI output resolution. If a, L3 n/ C4 ^; f* _0 U8 |6 r" B
custom resolution parameter is given,; f- f/ J+ H% n
this command changes the “Custom+ x+ E7 p; K: o3 i' _' ^. ?# L
Resolution” setting in the Setup Menu
1 O8 N$ W3 I7 j2 w ]and sets the “Output Resolution” to
; N! O9 m% o; ?5 S! Z7 T$ u$ {) ]“Custom” at the same time. | OK 480P
6 f( v2 d1 }& p; C& Y(OK followed by the# s3 N3 u# J3 o! q$ C3 M; V
original parameter) | SZM | 11 Q6 S- o0 N( i j; W
AR2 k B3 s$ {$ h; S% v
FS4 A/ o w* d4 l0 k9 V2 G" O
US
U7 |4 z' t# d+ V. w1.2
+ C5 ~9 j6 z8 d1 d p. P$ ^1.3" n+ a+ k4 b- g5 ~# [$ d
1.5
; V* t) H) b; ?0 Y' f21 {6 Y0 H! h1 u1 y7 n* ~7 f
1/2
8 z( C2 L6 j: h( _3 P; G% y& u. V: b5 Q, t
4+ u% T0 S [( ]7 B. H2 @1 a
1/36 t9 O( U' f4 {' x
1/4 | Set zoom ratio.
8 E5 B4 P! E: N R7 x1 s. NAR – Aspect ratio correction (Stretch,/ d# p1 V# ]" v# b2 \/ p5 C$ S
Letterbox or Pillarbox)
( \9 }9 o4 z% N6 u7 B1 A: l$ M7 p" PFS – Full Screen, p/ b4 R& d3 I7 r2 `% k1 {
US – Under scan) o/ y7 z) R" ?! U
1, 1.2, 1.3, 1.5, 2, 1/2 – Specified
* e e8 l5 A9 Y5 Szoom ratio.+ L6 b/ `# |" y! d+ Y
(When the TV Aspect Ratio is set to
% o. y i$ M; e( v! i21:9 Movable/Fixed/Cropped in the
3 H, W8 T+ g& p/ c* ]8 |! uSetup Menu, the only valid parameters8 h" r0 _" T% |; ^2 k4 B/ g# {
are 1, AR, and FS. 1 for 16:9 mode,3 b; ~+ J; W6 D
AR for 21:9 mode, and FS for full
' `+ A' w/ h5 v. b- E- tscreen mode.) | OK 1.2/ x! x0 O) T) w3 R& Q
(OK followed by the zoom' v5 y% \" _) p8 x! c9 D
ratio)
, j: j+ q0 E% U& t# K# u# rER INVALID | SVL | 0 – 100
: |# \' h. @- i9 z% QMUTE | Set volume control | OK 100
& H: A% i5 |$ }, v& NOK MUTE | SRP | CH
) @; s' ]4 H: a0 c6 N5 pTT
; a U+ \/ T9 C; R( iALL
0 \2 m- {4 B8 ^( s5 f iOFF0 w+ ]$ N7 y8 @* a
SHF0 b% m& F E6 `$ T3 U
RND | Repeat chapter
/ w& c# F- k& K" l9 N) X- o% {, ERepeat title or CD track4 P ^4 X5 s- z6 b5 G% @$ h
Repeat all
3 \/ @: N. e! l4 c2 ARepeat off5 b$ r5 h) S. z0 w! f& W8 d! Q
Shuffle
; @8 `/ { S9 b1 ~/ X2 ~Random | OK CH
2 Q, |6 a8 K, l! |2 o5 W, l1 v(OK followed by the
2 K9 F& O2 o+ trepeat mode)
* |# f$ Q+ C$ o1 a9 a/ oER INVALID | SRH | T3. n. K; B! V% `6 a+ N0 Z
C104 |- x1 x( q0 K% [# K) K
C 0:00:345 b) C) C( Y5 m/ n/ e* T z
T 0:12:13
" ?" g+ d$ s$ y) Y% w- U0:12:13 | Search to Title 3
0 J: P# i# X% F1 o6 @0 ^Search to Chapter 107 L8 s% s: p$ p/ ]
Search to 0:00:34 of the current
* _3 B& d4 c/ X% e7 N) T7 xchapter or track
) h: c9 `0 |9 p4 rSearch to 0:12:13 of the current title or% r3 U8 V! U u# D
disc$ k4 x7 N! f' c8 @3 F
Search to 0:12:13 of the current title or( @/ X9 Y) o" ~2 }$ Y
disc | OK% {1 v, w* a2 k5 t
ER INVALID | DPL | | Direct play | OK | RST | | Reset Command – Clean all command
: {! Y, d* j" A% dbuffers, do not wait for any
1 Z( o0 x' Y( Tpending/executing commands. Start
; E! ?1 C. C7 l a/ tover again. | OK | SSH | -10 ... 10 | Set subtitle shift | OK -10 (OK followed by
% M4 n4 h1 {" c+ g2 |/ q2 Lthe shift level)2 g0 k f. }7 }, O
ER INVALID | SOP | 0 … 5 | Set OSD position | OK 5 (OK followed by the% p) j& A& j% d9 g: k
position value) j' P- O# Y$ l6 O
ER INVALID | STC | E0 J' p; e7 G2 W' P
R/ \% h* ?& |. V& j: `
T/ i& w4 A3 V. G8 s; e5 i7 z8 Y; U# i
X
8 U% j, v( s6 n" F% KC
5 f9 L/ V0 x3 j7 N* `2 ?# fK | Set the time information display:* U6 A( h6 o+ O) y
E – Total Elapsed time+ A9 ~- t m, _) S
R – Total Remaining time" o: ]2 K% e+ A8 e0 `
T – Title Elapsed time
( o( B1 I7 V2 ?- ]# `/ P5 f8 p( oX – Title Remaining time% ~' l- H" [6 F$ p/ F" I
C – Chapter/track Elapsed time. K; ]1 r; ]& |3 x
K – Chapter/track Remaining time | OK E
# B f4 b$ o7 {# Q7 _: z(OK followed by the
* X; t' L7 L% R) e0 Gdisplay type)
; I7 _7 F0 W. \. a& i6 @+ W4 IER INVALI | SHR | Auto; w! }6 j& L! I6 c( E) \
On
& j3 b2 B6 I; P0 A( T2 FOff | Set HDR setting | OK Auto | SIS | 0/ o8 ]# V: O9 B6 M) f" M) O$ ?$ ]7 U
1
% y$ W' q0 a/ w% k1 W2
9 D5 L2 w" n; g! [& H) W$ e3
6 O7 e/ @' M$ f) }5 k42 O# J1 r3 U' h5 Q
5 | Select the input source:+ }* ^1 Q4 c `+ [, g2 b, y9 |
0 – Blu-ray player8 R" q) Y3 y* p6 i. ^- U
1 – HDMI IN
6 E3 B9 G f0 L# d/ d2 – ARC: HDMI OUT
; F5 o3 h; x+ x R# U' U7 T3 – OPTICAL IN) t G @/ ~ E5 A
4 – COAXIAL IN
9 {' o ?8 q1 G5 Q6 M* H$ l5 – USB AUDIO IN
' ?8 g [, T# W( V(Parameters 3 – 5 are only available' K* `* N6 h- l6 n) g
for UDP-205) | OK 0 BD-PLAYER1 U6 G: r( p. k/ q' T) V1 [7 d7 P
OK 1 HDMI-IN
1 X! O, N3 B7 U n/ O& fOK 2 ARC-HDMI-OUT# V7 w A. _6 W
OK 3 OPTICAL-IN% y/ T) N' O& ?+ ]
OK 4 COAXIAL-IN
- I- t$ ]0 J: N. C* U1 YOK 5 USB-AUDIO-IN
8 H! I D( f! T5 Z2 q( E3 GER INVALID | SSA | ON
& U) n" s4 ^& q+ s: f% uOFF
$ R2 Q5 z8 A$ `8 L% r: l9 }: A |SAVE | Set the parameters for Screen Saver
4 @$ q0 O4 ]: I2 \' o, ^in the Setup Menu – Playback Setup –7 v9 o" ]4 h5 b% z4 V
Screen Saver. | OK ON
+ n& F4 W' f+ bOK OFF1 O* {/ v7 L% J6 [$ Q. U9 B* Z
OK SAVE6 L( p5 K0 |* u* y
ER INVALID | APP | DIS
8 j/ M% Z) T" Q8 R" m' f# T% LMUS8 t, m9 d+ T. g% h, @ T
PHO* S: }# f% Y; P3 |& p: p7 A, O
MOV5 K& _0 U. }+ i4 S8 ~
NET
! E! w7 C8 X4 z( C% HSET | Stop current playback and start the- i% G6 ?$ M& S w* ^6 b
corresponding application from the
0 G/ f# i1 |- z0 _/ ahome menu:! [$ v0 o* u' k+ h( O6 k
DIS – Disc/ k7 p# {+ g: U6 |; C; d0 B5 o
MUS – Music" u7 v: `% }2 G$ ~) f c+ @( \+ s
PHO – Photo* M {% ^2 X/ ^0 o6 f
MOV – Movie
* V1 |' U3 F5 x0 @; _2 j7 m' C7 bNET – Network
- ]4 m( J0 H s m( |SET – Setup | OK DIS
9 ]+ @7 `$ |0 Y: D) L' E(OK followed by the
$ w" z& g, {: ]2 W, ?% Mapplication)
1 t$ G& n' ~" dER INVALID | SSD | M
8 K9 w% N, k' R3 L- U% K4 AS% P0 d- w* M$ D$ o/ B- a- q6 G
C | Set SACD Priority. Possible8 u& N* q$ @* l7 d3 I
parameters are:. U3 _% @ a% b4 q: Y% F$ H7 ^
M – Multi-channel
+ R, ^" C/ D9 E+ ]7 C1 }, \S – Stereo
, X) I% z2 m( Y$ c3 c; @3 V* CC – CD Mode
0 u( q3 X. V6 V5 B! l/ [(This command changes the Setup
& g- {3 n/ z- t: M$ {Menu setting for SACD Priority. The
1 |# r( q/ g4 Fsetting takes effect the next time an
. T! Y, B! | n' }! \$ TSACD is loaded into the player. If an" d% `* I2 n, ~) d# k3 k) C( ~5 O
SACD is already in the player, this1 I- {; g1 c, s$ E8 v4 S
setting does not immediately change3 B0 Z- A3 `' h% K! }. B' R
the playback priority.) | OK M% o1 V5 |$ I* s8 |; ~. @
(OK followed by the set
. P, i' T; i0 N' C2 Uvalue)
% t, E4 u# N# r( x( sER INVALID0 n: P9 J: U( ?! t% ]. ]7 |
| SDP | D2 s. \3 x$ }4 B9 R) g
P# |6 Z# J8 z0 y6 W; a* A# u
A | Set the SACD output mode:
, o4 m( A5 F# m) A5 G& WD – Output DSD& k4 S5 |0 t+ @% b: E
P – Output PCM
1 D( {/ F% I6 c" K( e; H: B/ ~A – Automatically decides between
" _8 C. I7 \( y/ } i8 wPCM or DSD based on connected
# `. l F c; s& `devices’ compatibility.4 \% f9 i B( n. p# |& h" [
(This command changes the Setup
0 @' K+ e, u! _! ]& Q/ B) sMenu setting for SACD Output. If an& P5 N* D, m0 y" k
SACD is playing, the output will be
8 p( \$ r: F# t" Mchanged on the fly.) | OK D4 z4 r) w6 \/ V5 A( @& L
(OK followed by the- }& ]5 Q, z, t
output mode)
" n1 e; u$ s) G. `8 EER INVALID | FWD | 1/32! y9 W* P! {8 I4 r% M6 d! ]
1/16
# @# p0 V, a$ r# L1/8
: D. c! ] D* B& y. I5 g" e1/4
9 \! h: T" l" s$ C7 E [1/2. E* F5 p, ~: I) H7 w0 Q# L( a
1, M3 G! l( o. H: c4 }1 S
2
! |) R/ W' Q5 \3
0 P' [7 d5 s' D9 v+ i" ]3 e4+ p, b8 C$ [4 I' ~5 u0 k) C7 y. \
5 | Set Fast/Slow Forward Play speed. | OK 1/32
' ? z8 e% W) B(OK followed by the
; w! i8 X% s2 Y6 L) {forward speed)' Z2 N4 z% p3 s! l8 b! m0 H8 t
ER INVALID | REV | 1/32
: R1 a# F. m, g1/16: n+ [& u5 }; u" X
1/8% y* c) D" s% H, F1 h
1/4
4 m" S% _! y) z9 H) F- M( |1/2
@: H7 N* @9 j! e! B! Y/ s1
3 _* Q4 l1 u7 m1 Y( T; c: Y2* R; d1 z, }1 J, \) q6 C. x6 l2 L
38 J0 D: Y5 U0 H7 H6 H- ^- v
4
Z# r/ `/ r1 d* s/ a& `/ c. A5 | Set Fast/Slow Reverse Play speed. | OK 1/32
) C0 f% m7 m% s4 ~(OK followed by the8 a% }+ ?5 S$ M' O9 s( b; L
forward speed)
# B) [2 [9 U9 h9 s5 d- tER INVALID
. Z* u+ M& k$ _9 e3 b3 t(Slow reverse is not
" f$ M9 F1 g$ K5 K$ |% t0 o# Bavailable for UHD content) | QDR | 1 … xxx | Query directory item.3 n" [; |3 \7 }/ u1 D
The parameter is the index number of6 T- C3 q& c6 J1 _; U j6 p- V
the file or item in the current directory/ v! P) V; ~! ^5 y
listing. | OK U USB1 (USB Device)) ?2 e# z* [* P4 @# m
OK O CDDA (Optical* S u* K; T$ l% {+ A3 b: K/ r
Disc)$ J! o1 A* g3 ?# Y! _9 e1 ~
OK 0 .. (Upper Level)
0 W9 P4 X* k) i+ T5 VOK F Rocky-mou*.wav# a* L" f! y; V O( \
(File)& s/ _. N( V7 u: h
OK D My Music, R" ^ Q- z5 E; l" |3 @
(Directory)
0 V2 b6 S9 E) \" pOK 0 My Network Search. z* w, p0 G" }; S1 G/ x7 N& M
(Network)
- w% q, e6 n+ @$ T. G" L* b' ^4 UOK L oShare_MediaSer*4 L7 i! \9 u M# W, U( R- r
(DLNA server)! @) \) @. B7 Y' V* m/ [. D
OK S MyPC (SMB server), s' }7 N# m. p1 |" o
OK N MyNFS (NFS
* a! R" R* r( f( {0 Y( rserver) | APP 控制协议虽然官方提供了完整的协议,但是未能达到我搜索指定影片并且播放的目的,OPPO有提供一个APP ‘MediaControl’[2][3] 用APP可以在局域网操控播放器。通过破解协议,我整理出另外一套HTTP协议,可以与官方提供的协议进行互补。 2 }2 x2 C3 j! R+ [- N
APP广播激活协议首先要广播协议,播放器接收后,会激活HTTP协议,建议多次广播,在收到播放器返回消息后,停止广播。 首先我们在局域网向255.255.255.255进行UDP广播 ASCII:NOTIFY OREMOTE LOGINHEX:4e 4f 54 49 46 59 20 4f 52 45 4d 4f 54 45 20 4c 4f 47 49 4e 当播放器收到广播时会返回
2 \" o% w. A0 v+ h) A1 u: z" k- ASCII:UDP-203_OPPO UDP-203 REPORT ADDRESS TO OREMOTE: 192.168.1.2:19999HEX:55 44 50 2d 32 30 33 5f 4f 50 50 4f 20 55 44 50 2d 32 30 33 20 52 45 50 4f 52 54 20 41 44 44 52 45 53 53 20 54 4f 20 4f 52 45 4d 4f 54 45 3a 20 31 39 32 2e 31 36 38 2e 31 2e 32 3a 31 39 39 39 39
复制代码
, ?1 r+ {7 j4 r0 c) @/ d M
6 e) Q7 e% J. UHTTP协议端口协议被激活后,会开启436端口,我们通过436端口可以进行HTTP操作,并返回JSON结果
, k) ^9 `8 c$ K8 r- HHTTP协议内容我整理出部分HTTP协议,不是很完全,欢迎补充 协议使用GET方法,如需带参数,则在问号后加入json格式
1 e/ [1 g3 _3 ~/ g8 \示例 - 192.168.1.2:436/signin?%7B%22appIpAddress%22%3A%2210.254.254.254%22%2C%22appIconType%22%3A1%7D
复制代码
' H2 p6 E% ~; O, S7 A, `点击图片可放大
) ?/ q" |8 z; Z# Q9 P5 W
5 O; O* n& k* _0 p( ]
点击图片可放大
& U) O* f0 t& X' e* v- r3 q% f) x3 h1 L) }; h A
最后最终我使用了HTTP的playnormalfile/checkfolderhasbdmv方法,实现了海报墙点击联动播放器播放。不在为寻片而苦恼。
2 c, q1 B, w# ~0 q由于每次开机都需要激活HTTP协议,所以我将播放器设为固定IP,在检测到IP连通后,广播APP的UDP协议,实现了开机即激活。
. z( e0 c Y! H' B: |$ p0 U' y- pNFS共享播放流程
9 w* s+ O; e. B1.signin 5 n. o( O% D% [1 x
2.等待getdevicelist发现NFS设备
$ y. {( ]6 j: c" Z3.loginNfsServer 登陆nfs服务器 q' r" S) I1 H3 n
4.mountNfsSharedFolder 挂载nfs目录 % J( z& P- |, _
5.getfilelist 逐级获取文件列表6.playnormalfile / checkfolderhasbdmv 播放文件 ; Y }: N/ W# `* K
' b# j' o S9 ^文章转自:https://xiaohai.co/oppo-udp-203-control-protocol/ 如侵权请联系版主删除。 |