RTSP/1.0 459 Агрегированная операция не разрешена
Я работаю в RTSP. Я хочу разработать Android по RTSP. Сервер RTSP является VLC. Клиент Java. Я получаю сообщение "RTSP/1.0 459 Агрегатная операция не разрешена" при отправке сообщения "SETUP";
Пример моего кода:
DESCRIBE rtsp://192.168.0.196:8554/test.sdp RTSP/1.0
Cseq: 2
return content:
RTSP/1.0 200 OK
Server: VLC/2.1.0
Date: Fri, 29 Nov 2013 04:14:13 GMT
Content-Type: application/sdp
Content-Base: rtsp://192.168.0.196:8554/test.sdp
Content-Length: 742
Cache-Control: no-cache
Cseq: 2
v=0
o=- 15439064194650748030 15439064194650748030 IN IP4 WIN-AF6P80LVIJ0
s=Unnamed
i=N/A
c=IN IP4 0.0.0.0
t=0 0
a=tool:vlc 2.1.0
a=recvonly
a=type:broadcast
a=charset:UTF-8
a=control:rtsp://192.168.0.196:8554/test.sdp
m=audio 0 RTP/AVP 96
b=RR:0
a=rtpmap:96 mpeg4-generic/44100/2
a=fmtp:96 streamtype=5; profile-level-id=15; mode=AAC-hbr; config=12100000000000000000000000000000; SizeLength=13; IndexLength=3; IndexDeltaLength=3; Profile=1;
a=control:rtsp://192.168.0.196:8554/test.sdp/trackID=0
m=video 0 RTP/AVP 96
b=RR:0
a=rtpmap:96 H264/90000
a=fmtp:96 packetization-mode=1;profile-level-id=640028;sprop-parameter-sets=Z2QAKKy0A8ARPywgAAB9IAAXcAHjBlQ=,aO48sA==;
a=control:rtsp://192.168.0.196:8554/test.sdp/trackID=1
SETUP rtsp://192.168.0.196:8554/test.sdp RTSP/1.0
Cseq: 3
Transport: RTP/AVP;UNICAST;client_port=16264-16265
return content:
RTSP/1.0 459 Aggregate operation not allowed
Server: VLC/2.1.0
Date: Fri, 29 Nov 2013 04:14:19 GMT
Content-Length: 0
Cache-Control: no-cache
Cseq: 3
return error:RTSP/1.0 459 Aggregate operation not allowed
Server: VLC/2.1.0
Date: Fri, 29 Nov 2013 04:14:19 GMT
Content-Length: 0
Cache-Control: no-cache
Cseq: 3
Я хочу решить это, спасибо!
1 ответ
Запрос SETUP используется для настройки пары соединений rtp/rtcp, которая предназначена ТОЛЬКО ОДНОМУ потоку (например, видеодорожка или одна аудиодорожка). Когда вы запускаете SETUP, вы указываете два порта, которые вы будете использовать для rtp и rtcp. если презентация имеет более одного потока (как в вашем случае), вы должны выполнить запрос SETUP для каждого потока, который хотите получить, и открыть два порта для каждого. В вашем случае медиа-файл имеет один аудио и один видео поток, поэтому вы должны выполнить SETUP для rtsp://192.168.0.196:8554/test.sdp/trackID=0
и один для rtsp://192.168.0.196:8554/test.sdp/trackID=1.
trackID=X
части включены в описание sdp, которое возвращает сервер, под "a=control:"
атрибутов.