- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我目前正在为 Android 设备开发通过 RTSP/UDP 进行的视频流。我的目标是通过 4G 蜂窝网络流式传输视频。我面临的问题是所使用的方法不适用于 Samsung Galaxy Core SM-G386F。
下面是该方法的摘要和一个日志文件。我想知道我是否犯了任何明显的错误,或者基本上该设备不支持它。
服务器端
流媒体服务器:
live555MediaServer
来源:http://www.live555.com/liveMedia/
vlc -vvv Jellyfish-3-Mbps.mkv --sout '#rtp{sdp=rtsp://0.0.0.0:5555/test.sdp}'
来源:http://www.videolan.org/vlc/download-debian.html
视频测试文件:
Jellyfish 视频比特率测试文件
例如:Jellyfish-3-Mbps.mkv - 60 秒,3 Mbps AVG 比特率,21 MB
客户端
String url = "rtsp://IP_ADDR:8554/Jellyfish-3-Mbps.mkv"; // Live555MediaServer
String url = "rtsp://IP_ADDR:5555/test.sdp"; // VLC
Player.java(方法一)
VideoView v1 = (VideoView) findViewById(R.id.videoView1);
v1.setVideoURI(Uri.parse(url));
v1.requestFocus();
v1.start();
Player.java(方法二)-UDP测试
MediaPlayer mp = new MediaPlayer();
try {
mp.setDataSource(url);
mp.prepareAsync();
mp.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mp) {
Log.d(TAG, "START STREAM");
mp.start();
}
});
} catch (IOException e) {
Log.d(TAG, "ERROR: " + e);
} catch (Exception e) {
Log.d(TAG, "ERROR: " + e);
}
AndroidManifest.xml
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
两种方法(VideoView 和 MediaPlayer)和媒体服务器(Live555MediaServer 和 VLC)在以下 Android 设备:
问题出现在 Android Galaxy Core SM-G386F (Android 4.2) 上。两种方式都可以播放Live555MediaServer的流,但是无法播放VLC的流。
完整的 logcats:GALAXY_CORE_VLC , GALAXY_CORE_LIVE555
Android Galaxy Core SM-G386F 的 Logcat 使用方法 1 为 VLC 流媒体。它请求 RTP/AVP/UDP,但 id 不接收 UPD 数据包。
06-18 12:01:21.907: V/NuPlayer(5575): scanning sources haveAudio=0, haveVideo=0
06-18 12:01:21.938: I/ARTSPConnection(5575): status: RTSP/1.0 461 Unsupported transport
06-18 12:01:21.938: V/ARTSPConnection(5575): line: Server: VLC/2.0.3
06-18 12:01:21.938: V/ARTSPConnection(5575): line: Date: Wed, 18 Jun 2014 10:01:23 GMT
06-18 12:01:21.938: V/ARTSPConnection(5575): line: Content-Length: 0
06-18 12:01:21.938: V/ARTSPConnection(5575): line: Cache-Control: no-cache
06-18 12:01:21.938: V/ARTSPConnection(5575): line: Cseq: 7
06-18 12:01:21.938: I/MyHandler(5575): SETUP(1) completed with result 0 (Success)
06-18 12:01:21.938: E/MyHandler(5575): Server responses [461] ERROR for the SETUP request
06-18 12:01:21.938: W/APacketSource(5575): Format:video 0 RTP/AVP 96 / MIME-Type:H264/90000
06-18 12:01:21.938: I/APacketSource(5575): dimensions 1280x720
06-18 12:01:21.938: W/ASessionDescription(5575): system prop 3gpp-ra option is not found
06-18 12:01:21.938: V/ARTSPConnection(5575): request: 'SETUP rtsp://IP_ADDR:5555/test.sdp/trackID=1 RTSP/1.0
06-18 12:01:21.938: V/ARTSPConnection(5575): Transport: RTP/AVP/TCP;unicast;interleaved=0-1
06-18 12:01:21.938: V/ARTSPConnection(5575): Session: 5729006ad01e3b2d
06-18 12:01:21.938: V/ARTSPConnection(5575): Blocksize: 1400
06-18 12:01:21.938: V/ARTSPConnection(5575): User-Agent: Samsung SM-G386F stagefright/Beyonce/1.1.9 (Linux;Android 4.2.2)
06-18 12:01:21.938: V/ARTSPConnection(5575): x-wap-profile: http://wap.samsungmobile.com/uaprof/SM-G386F.xml
06-18 12:01:21.938: V/ARTSPConnection(5575): CSeq: 8
06-18 12:01:21.938: V/ARTSPConnection(5575):
06-18 12:01:21.938: V/ARTSPConnection(5575): '
06-18 12:01:22.001: I/ARTSPConnection(5575): status: RTSP/1.0 461 Unsupported transport
06-18 12:01:22.001: V/ARTSPConnection(5575): line: Server: VLC/2.0.3
06-18 12:01:22.009: V/ARTSPConnection(5575): line: Date: Wed, 18 Jun 2014 10:01:23 GMT
06-18 12:01:22.009: V/ARTSPConnection(5575): line: Session: 5729006ad01e3b2d;timeout=60
06-18 12:01:22.009: V/ARTSPConnection(5575): line: Content-Length: 0
06-18 12:01:22.009: V/ARTSPConnection(5575): line: Cache-Control: no-cache
06-18 12:01:22.009: V/ARTSPConnection(5575): line: Cseq: 8
06-18 12:01:22.009: I/MyHandler(5575): SETUP(2) completed with result 0 (Success)
06-18 12:01:22.009: E/MyHandler(5575): Server responses [461] ERROR for the SETUP request
06-18 12:01:22.009: V/NuPlayer(5575): scanning sources haveAudio=0, haveVideo=0
06-18 12:01:22.009: W/ARTSPConnection(5575): onReceiveResponse >>> State is not CONNECTED !!!
06-18 12:01:22.009: W/ALooperRoster(5575): failed to post message. Target handler 113 still registered, but object gone.
06-18 12:01:22.048: I/Monitor(1888): SIOP:: Current AP = 370, CP = 0, PST = 365
06-18 12:01:22.110: V/NuPlayer(5575): scanning sources haveAudio=0, haveVideo=0
06-18 12:01:22.110: V/MediaPlayerService(5575): [20] notify (0x40a12880, 100, 1, -2147483648)
06-18 12:01:22.110: V/MediaPlayer(7888): message received msg=100, ext1=1, ext2=-2147483648
06-18 12:01:22.110: E/MediaPlayer(7888): error (1, -2147483648)
06-18 12:01:22.110: V/MediaPlayer(7888): callback application
06-18 12:01:22.110: V/MediaPlayer(7888): back from callback
06-18 12:01:22.110: E/MediaPlayer(7888): Error (1,-2147483648)
06-18 12:01:22.110: D/VideoView(7888): Error: 1,-2147483648
更新
三星 Galaxy S4
VLC 的 Logcat
06-19 09:43:16.313: V/ARTSPConnection(211): request: 'OPTIONS rtsp://IP_ADDR:5555/test.sdp RTSP/1.0
06-19 09:43:16.313: V/ARTSPConnection(211): User-Agent: User-Agent: Samsung GT-I9505 stagefright/Beyonce/1.1.9 (Linux;Android 4.3)
06-19 09:43:16.313: V/ARTSPConnection(211): x-wap-profile: http://wap.samsungmobile.com/uaprof/GT-I9505.xml
06-19 09:43:16.313: V/ARTSPConnection(211): CSeq: 0
06-19 09:43:16.313: V/ARTSPConnection(211):
06-19 09:43:16.313: V/ARTSPConnection(211): '
06-19 09:43:16.313: W/ARTSPConnection(211): User-Agent: User-Agent: Samsung GT-I9505 stagefright/Beyonce/1.1.9 (Linux;Android 4.3)
06-19 09:43:16.313: V/ARTSPConnection(211): request: 'DESCRIBE rtsp://IP_ADDR:5555/test.sdp RTSP/1.0
06-19 09:43:16.313: V/ARTSPConnection(211): Accept: application/sdp
06-19 09:43:16.313: V/ARTSPConnection(211): User-Agent: User-Agent: Samsung GT-I9505 stagefright/Beyonce/1.1.9 (Linux;Android 4.3)
06-19 09:43:16.313: V/ARTSPConnection(211): x-wap-profile: http://wap.samsungmobile.com/uaprof/GT-I9505.xml
06-19 09:43:16.313: V/ARTSPConnection(211): CSeq: 1
06-19 09:43:16.313: V/ARTSPConnection(211):
06-19 09:43:16.313: V/ARTSPConnection(211): '
06-19 09:43:16.363: E/MP-Decision(1772): num online cores: 3 reqd : 2 available : 4 rq_depth:0.600000 hotplug_avg_load_dw: 96
06-19 09:43:16.363: E/MP-Decision(1772): DOWN cpu:2 core_idx:2 Ns:2.100000 Ts:240 total_time_down:245.000000
06-19 09:43:16.373: I/SurfaceFlinger(204): id=25 Removed uool (5/6)
06-19 09:43:16.373: I/SurfaceFlinger(204): id=25 Removed uool (-2/6)
06-19 09:43:16.383: I/ARTSPConnection(211): status: RTSP/1.0 200 OK
06-19 09:43:16.383: V/ARTSPConnection(211): line: Server: VLC/2.0.3
06-19 09:43:16.383: V/ARTSPConnection(211): line: Content-Length: 0
06-19 09:43:16.383: V/ARTSPConnection(211): line: Cseq: 0
06-19 09:43:16.383: V/ARTSPConnection(211): line: Public: DESCRIBE,SETUP,TEARDOWN,PLAY,PAUSE,GET_PARAMETER
06-19 09:43:16.423: D/STATUSBAR-NetworkController(1043): onSignalStrengthsChanged signalStrength=SignalStrength: 99 -1 -1 -1 -1 -1 -1 18 -104 -10 60 -1 2147483647 gsm|lte 0x1 level=1
06-19 09:43:16.433: I/ARTSPConnection(211): status: RTSP/1.0 200 OK
06-19 09:43:16.433: V/ARTSPConnection(211): line: Server: VLC/2.0.3
06-19 09:43:16.433: V/ARTSPConnection(211): line: Date: Thu, 19 Jun 2014 07:43:17 GMT
06-19 09:43:16.433: V/ARTSPConnection(211): line: Content-Type: application/sdp
06-19 09:43:16.433: V/ARTSPConnection(211): line: Content-Base: rtsp://IP_ADDR:5555/test.sdp
06-19 09:43:16.433: V/ARTSPConnection(211): line: Content-Length: 470
06-19 09:43:16.433: V/ARTSPConnection(211): line: Cache-Control: no-cache
06-19 09:43:16.433: V/ARTSPConnection(211): line: Cseq: 1
06-19 09:43:16.473: I/MyHandler(211): DESCRIBE completed with result 0 (Success)
06-19 09:43:16.473: I/ASessionDescription(211): v=0
06-19 09:43:16.473: I/ASessionDescription(211): o=- 15514077275532980588 15514077275532980588 IN IP4 e82-103-128-145s
06-19 09:43:16.473: I/ASessionDescription(211): s=Unnamed
06-19 09:43:16.473: I/ASessionDescription(211): i=N/A
06-19 09:43:16.473: I/ASessionDescription(211): c=IN IP4 0.0.0.0
06-19 09:43:16.473: I/ASessionDescription(211): t=0 0
06-19 09:43:16.473: I/ASessionDescription(211): a=tool:vlc 2.0.3
06-19 09:43:16.473: I/ASessionDescription(211): a=recvonly
06-19 09:43:16.473: I/ASessionDescription(211): a=type:broadcast
06-19 09:43:16.473: I/ASessionDescription(211): a=charset:UTF-8
06-19 09:43:16.473: I/ASessionDescription(211): a=control:rtsp://IP_ADDR:5555/test.sdp
06-19 09:43:16.473: I/ASessionDescription(211): m=video 0 RTP/AVP 96
06-19 09:43:16.473: I/ASessionDescription(211): b=RR:0
06-19 09:43:16.473: I/ASessionDescription(211): a=rtpmap:96 H264/90000
06-19 09:43:16.473: I/ASessionDescription(211): a=fmtp:96 packetization-mode=1;profile-level-id=640028;sprop-parameter-sets=Z2QAKKwspAHgCJ+XAVICAgKAAAH0gABdwE7QsWiQ,aOtzUlA=;
06-19 09:43:16.473: I/ASessionDescription(211): a=control:rtsp://IP_ADDR:5555/test.sdp/trackID=0
06-19 09:43:16.473: W/MyHandler(211): Server: VLC/2.0.3
06-19 09:43:16.473: W/MyHandler(211): mBaseURL is change to rtsp://IP_ADDR:5555/test.sdp from 'content-base'
06-19 09:43:16.473: W/MyHandler(211): Property [net.connectivity.qosbw] NOT Found, bwQoS=2147483647
06-19 09:43:16.473: W/APacketSource(211): Format:video 0 RTP/AVP 96 / MIME-Type:H264/90000
06-19 09:43:16.473: I/APacketSource(211): dimensions 1920x1080
06-19 09:43:16.473: I/ARTPConnection(211): Start:16202
06-19 09:43:16.483: W/ASessionDescription(211): system prop 3gpp-ra option is not found
06-19 09:43:16.483: V/ARTSPConnection(211): request: 'SETUP rtsp://IP_ADDR:5555/test.sdp/trackID=0 RTSP/1.0
06-19 09:43:16.483: V/ARTSPConnection(211): Transport: RTP/AVP/UDP;unicast;client_port=16202-16203
06-19 09:43:16.483: V/ARTSPConnection(211): Blocksize: 1400
06-19 09:43:16.483: V/ARTSPConnection(211): User-Agent: User-Agent: Samsung GT-I9505 stagefright/Beyonce/1.1.9 (Linux;Android 4.3)
06-19 09:43:16.483: V/ARTSPConnection(211): x-wap-profile: http://wap.samsungmobile.com/uaprof/GT-I9505.xml
06-19 09:43:16.483: V/ARTSPConnection(211): CSeq: 2
06-19 09:43:16.483: V/ARTSPConnection(211):
06-19 09:43:16.483: V/ARTSPConnection(211): '
06-19 09:43:16.514: E/MP-Decision(1772): num online cores: 2 reqd : 1 available : 4 rq_depth:0.400000 hotplug_avg_load_dw: 24
06-19 09:43:16.514: E/MP-Decision(1772): DOWN cpu:1 core_idx:1 Ns:1.100000 Ts:190 total_time_down:241.000000
06-19 09:43:16.554: I/ARTSPConnection(211): status: RTSP/1.0 200 OK
06-19 09:43:16.554: V/ARTSPConnection(211): line: Server: VLC/2.0.3
06-19 09:43:16.554: V/ARTSPConnection(211): line: Date: Thu, 19 Jun 2014 07:43:17 GMT
06-19 09:43:16.554: V/ARTSPConnection(211): line: Transport: RTP/AVP/UDP;unicast;client_port=16202-16203;server_port=38931-38932;ssrc=0A126FFE;mode=play
06-19 09:43:16.564: V/ARTSPConnection(211): line: Session: 6aeb4991d8fe19c4;timeout=60
06-19 09:43:16.564: V/ARTSPConnection(211): line: Content-Length: 0
06-19 09:43:16.564: V/ARTSPConnection(211): line: Cache-Control: no-cache
06-19 09:43:16.564: V/ARTSPConnection(211): line: Cseq: 2
06-19 09:43:16.564: I/MyHandler(211): SETUP(1) completed with result 0 (Success)
06-19 09:43:16.564: I/MyHandler(211): server specified timeout of 60 secs.
06-19 09:43:16.564: W/MyHandler(211): Missing 'source' field in Transport response. Using RTSP endpoint address.
06-19 09:43:16.564: W/MyHandler(211): Server picked an odd RTP port, it should've picked an even one, we'll let it pass for now, but this may break in the future.
06-19 09:43:16.564: W/MyHandler(211): successfully poked holes (Server IP : IP_ADDR, rtp port : 38931, rtcp port : 38932)
06-19 09:43:16.564: V/ARTSPConnection(211): request: 'PLAY rtsp://IP_ADDR:5555/test.sdp RTSP/1.0
06-19 09:43:16.564: V/ARTSPConnection(211): Session: 6aeb4991d8fe19c4
06-19 09:43:16.564: V/ARTSPConnection(211): Range: npt=0.000-
06-19 09:43:16.564: V/ARTSPConnection(211): User-Agent: User-Agent: Samsung GT-I9505 stagefright/Beyonce/1.1.9 (Linux;Android 4.3)
06-19 09:43:16.564: V/ARTSPConnection(211): x-wap-profile: http://wap.samsungmobile.com/uaprof/GT-I9505.xml
06-19 09:43:16.564: V/ARTSPConnection(211): CSeq: 3
06-19 09:43:16.564: V/ARTSPConnection(211):
06-19 09:43:16.564: V/ARTSPConnection(211): '
06-19 09:43:16.584: I/power(710): *** release_dvfs_lock : lockType : 1
06-19 09:43:16.584: D/SSRMv2:CustomFrequencyManagerService(710): releaseDVFSLockLocked : Getting Lock type frm List : DVFS_MIN_LIMIT frequency : 1350000 uid : 1000 pid : 710 tag : ACTIVITY_RESUME_BOOSTER@9
06-19 09:43:16.644: I/ARTPSource(211): Format: video 0 RTP/AVP 96 / MIME-Type: H264/90000
06-19 09:43:16.644: I/ARTPSource(211): Added the first buff with seq:59548 to Q
06-19 09:43:16.644: I/ARTSPConnection(211): status: RTSP/1.0 200 OK
06-19 09:43:16.644: V/ARTSPConnection(211): line: Server: VLC/2.0.3
06-19 09:43:16.644: V/ARTSPConnection(211): line: Date: Thu, 19 Jun 2014 07:43:17 GMT
06-19 09:43:16.654: V/ARTSPConnection(211): line: RTP-Info: url=rtsp://IP_ADDR:5555/test.sdp/trackID=0;seq=59548;rtptime=3173115976
06-19 09:43:16.654: V/ARTSPConnection(211): line: Range: npt=4.038456-
06-19 09:43:16.654: V/ARTSPConnection(211): line: Session: 6aeb4991d8fe19c4;timeout=60
06-19 09:43:16.654: V/ARTSPConnection(211): line: Content-Length: 0
06-19 09:43:16.654: V/ARTSPConnection(211): line: Cache-Control: no-cache
06-19 09:43:16.664: V/ARTSPConnection(211): line: Cseq: 3
06-19 09:43:16.664: I/MyHandler(211): PLAY completed with result 0 (Success)
06-19 09:43:16.664: W/MyHandler(211): set mInitialSeqNum to 59548 - by RTP-Info
06-19 09:43:16.664: W/MyHandler(211): postNormalPlayTimeMapping at 'accu' [3173115976, 4038455]
06-19 09:43:16.664: I/MyHandler(211): Time now established for all tracks.
06-19 09:43:16.664: I/MyHandler(211): PLAY CASE: posting postOnDemandAUBufferRequest for the first time
06-19 09:43:16.724: E/MyHandler(211): first segment unit rtpTime=3173115976 seq=59548
06-19 09:43:16.724: E/MyHandler(211): video only mode : disable buffering
06-19 09:43:16.724: V/MediaPlayerService(211): [8] notify (0xb74eb070, 1, 0, 0)
06-19 09:43:16.724: V/MediaPlayer(6653): message received msg=1, ext1=0, ext2=0
06-19 09:43:16.724: V/MediaPlayer(6653): prepared
06-19 09:43:16.724: V/MediaPlayer(6653): callback application
06-19 09:43:16.734: D/MediaPlayer(6653): getMetadata
06-19 09:43:16.734: V/MediaPlayer(6653): back from callback
06-19 09:43:16.744: V/MediaPlayer(6653): getVideoWidth
06-19 09:43:16.744: V/MediaPlayer-JNI(6653): getVideoWidth: 0
06-19 09:43:16.744: V/MediaPlayer(6653): getVideoHeight
06-19 09:43:16.744: V/MediaPlayer-JNI(6653): getVideoHeight: 0
06-19 09:43:16.744: V/MediaPlayer-JNI(6653): start
06-19 09:43:16.744: V/MediaPlayer(6653): start
Live555MediaServer 的 Logcat
06-19 09:48:56.245: V/ARTSPConnection(211): request: 'OPTIONS rtsp://IP_ADDR:8554/Jellyfish-3-Mbps.mkv RTSP/1.0
06-19 09:48:56.245: V/ARTSPConnection(211): User-Agent: User-Agent: Samsung GT-I9505 stagefright/Beyonce/1.1.9 (Linux;Android 4.3)
06-19 09:48:56.245: V/ARTSPConnection(211): x-wap-profile: http://wap.samsungmobile.com/uaprof/GT-I9505.xml
06-19 09:48:56.245: V/ARTSPConnection(211): CSeq: 0
06-19 09:48:56.245: V/ARTSPConnection(211):
06-19 09:48:56.245: V/ARTSPConnection(211): '
06-19 09:48:56.245: W/ARTSPConnection(211): User-Agent: User-Agent: Samsung GT-I9505 stagefright/Beyonce/1.1.9 (Linux;Android 4.3)
06-19 09:48:56.245: V/ARTSPConnection(211): request: 'DESCRIBE rtsp://IP_ADDR:8554/Jellyfish-3-Mbps.mkv RTSP/1.0
06-19 09:48:56.245: V/ARTSPConnection(211): Accept: application/sdp
06-19 09:48:56.245: V/ARTSPConnection(211): User-Agent: User-Agent: Samsung GT-I9505 stagefright/Beyonce/1.1.9 (Linux;Android 4.3)
06-19 09:48:56.245: V/ARTSPConnection(211): x-wap-profile: http://wap.samsungmobile.com/uaprof/GT-I9505.xml
06-19 09:48:56.245: V/ARTSPConnection(211): CSeq: 1
06-19 09:48:56.245: V/ARTSPConnection(211):
06-19 09:48:56.245: V/ARTSPConnection(211): '
06-19 09:48:56.275: E/MP-Decision(1772): num online cores: 3 reqd : 2 available : 4 rq_depth:0.000000 hotplug_avg_load_dw: 79
06-19 09:48:56.275: E/MP-Decision(1772): DOWN cpu:2 core_idx:2 Ns:2.100000 Ts:240 total_time_down:245.000000
06-19 09:48:56.295: I/ARTSPConnection(211): status: RTSP/1.0 200 OK
06-19 09:48:56.295: V/ARTSPConnection(211): line: CSeq: 0
06-19 09:48:56.295: V/ARTSPConnection(211): line: Date: Thu, Jun 19 2014 07:48:57 GMT
06-19 09:48:56.295: V/ARTSPConnection(211): line: Public: OPTIONS, DESCRIBE, SETUP, TEARDOWN, PLAY, PAUSE, GET_PARAMETER, SET_PARAMETER
06-19 09:48:56.315: I/SurfaceFlinger(204): id=35 Removed uool (5/6)
06-19 09:48:56.315: I/SurfaceFlinger(204): id=35 Removed uool (-2/6)
06-19 09:48:56.345: I/ARTSPConnection(211): status: RTSP/1.0 200 OK
06-19 09:48:56.345: V/ARTSPConnection(211): line: CSeq: 1
06-19 09:48:56.345: V/ARTSPConnection(211): line: Date: Thu, Jun 19 2014 07:48:57 GMT
06-19 09:48:56.345: V/ARTSPConnection(211): line: Content-Base: rtsp://IP_ADDR:8554/Jellyfish-3-Mbps.mkv/
06-19 09:48:56.345: V/ARTSPConnection(211): line: Content-Type: application/sdp
06-19 09:48:56.345: V/ARTSPConnection(211): line: Content-Length: 614
06-19 09:48:56.345: I/MyHandler(211): DESCRIBE completed with result 0 (Success)
06-19 09:48:56.345: I/ASessionDescription(211): v=0
06-19 09:48:56.345: I/ASessionDescription(211): o=- 1403164137695186 1 IN IP4 IP_ADDR
06-19 09:48:56.345: I/ASessionDescription(211): s=Matroska video+audio+(optional)subtitles, streamed by the LIVE555 Media Server
06-19 09:48:56.345: I/ASessionDescription(211): i=Jellyfish-3-Mbps.mkv
06-19 09:48:56.345: I/ASessionDescription(211): t=0 0
06-19 09:48:56.345: I/ASessionDescription(211): a=tool:LIVE555 Streaming Media v2014.03.25
06-19 09:48:56.345: I/ASessionDescription(211): a=type:broadcast
06-19 09:48:56.345: I/ASessionDescription(211): a=control:*
06-19 09:48:56.345: I/ASessionDescription(211): a=range:npt=0-59.977
06-19 09:48:56.345: I/ASessionDescription(211): a=x-qt-text-nam:Matroska video+audio+(optional)subtitles, streamed by the LIVE555 Media Server
06-19 09:48:56.345: I/ASessionDescription(211): a=x-qt-text-inf:Jellyfish-3-Mbps.mkv
06-19 09:48:56.345: I/ASessionDescription(211): m=video 0 RTP/AVP 96
06-19 09:48:56.345: I/ASessionDescription(211): c=IN IP4 0.0.0.0
06-19 09:48:56.345: I/ASessionDescription(211): b=AS:500
06-19 09:48:56.345: I/ASessionDescription(211): a=rtpmap:96 H264/90000
06-19 09:48:56.345: I/ASessionDescription(211): a=fmtp:96 packetization-mode=1;profile-level-id=640028;sprop-parameter-sets=Z2QAKKwspAHgCJ+XAVICAgKAAAH0gABdwE7QsWiQ,aOtzUlA=
06-19 09:48:56.345: I/ASessionDescription(211): a=control:track1
06-19 09:48:56.345: W/MyHandler(211): mBaseURL is change to rtsp://IP_ADDR:8554/Jellyfish-3-Mbps.mkv/ from 'content-base'
06-19 09:48:56.345: W/MyHandler(211): Property [net.connectivity.qosbw] NOT Found, bwQoS=2147483647
06-19 09:48:56.345: W/APacketSource(211): Format:video 0 RTP/AVP 96 / MIME-Type:H264/90000
06-19 09:48:56.345: I/APacketSource(211): dimensions 1920x1080
06-19 09:48:56.345: I/ARTPConnection(211): Start:16130
06-19 09:48:56.345: W/ASessionDescription(211): system prop 3gpp-ra option is not found
06-19 09:48:56.345: V/ARTSPConnection(211): request: 'SETUP rtsp://IP_ADDR:8554/Jellyfish-3-Mbps.mkv/track1 RTSP/1.0
06-19 09:48:56.345: V/ARTSPConnection(211): Transport: RTP/AVP/UDP;unicast;client_port=16130-16131
06-19 09:48:56.345: V/ARTSPConnection(211): Blocksize: 1400
06-19 09:48:56.345: V/ARTSPConnection(211): User-Agent: User-Agent: Samsung GT-I9505 stagefright/Beyonce/1.1.9 (Linux;Android 4.3)
06-19 09:48:56.345: V/ARTSPConnection(211): x-wap-profile: http://wap.samsungmobile.com/uaprof/GT-I9505.xml
06-19 09:48:56.345: V/ARTSPConnection(211): CSeq: 2
06-19 09:48:56.345: V/ARTSPConnection(211):
06-19 09:48:56.345: V/ARTSPConnection(211): '
06-19 09:48:56.395: I/ARTSPConnection(211): status: RTSP/1.0 200 OK
06-19 09:48:56.395: V/ARTSPConnection(211): line: CSeq: 2
06-19 09:48:56.395: V/ARTSPConnection(211): line: Date: Thu, Jun 19 2014 07:48:57 GMT
06-19 09:48:56.395: V/ARTSPConnection(211): line: Transport: RTP/AVP;unicast;destination=2.128.61.4;source=IP_ADDR;client_port=16130-16131;server_port=6970-6971
06-19 09:48:56.395: V/ARTSPConnection(211): line: Session: 41241BFD;timeout=65
06-19 09:48:56.395: I/MyHandler(211): SETUP(1) completed with result 0 (Success)
06-19 09:48:56.395: I/MyHandler(211): server specified timeout of 65 secs.
06-19 09:48:56.395: W/MyHandler(211): successfully poked holes (Server IP : IP_ADDR, rtp port : 6970, rtcp port : 6971)
06-19 09:48:56.405: V/ARTSPConnection(211): request: 'PLAY rtsp://IP_ADDR:8554/Jellyfish-3-Mbps.mkv RTSP/1.0
06-19 09:48:56.405: V/ARTSPConnection(211): Session: 41241BFD
06-19 09:48:56.405: V/ARTSPConnection(211): Range: npt=0.000-59.977001
06-19 09:48:56.405: V/ARTSPConnection(211): User-Agent: User-Agent: Samsung GT-I9505 stagefright/Beyonce/1.1.9 (Linux;Android 4.3)
06-19 09:48:56.405: V/ARTSPConnection(211): x-wap-profile: http://wap.samsungmobile.com/uaprof/GT-I9505.xml
06-19 09:48:56.405: V/ARTSPConnection(211): CSeq: 3
06-19 09:48:56.405: V/ARTSPConnection(211):
06-19 09:48:56.405: V/ARTSPConnection(211): '
06-19 09:48:56.465: I/ARTSPConnection(211): status: RTSP/1.0 200 OK
06-19 09:48:56.465: I/ARTPSource(211): Format: video 0 RTP/AVP 96 / MIME-Type: H264/90000
06-19 09:48:56.465: V/ARTSPConnection(211): line: CSeq: 3
06-19 09:48:56.465: V/ARTSPConnection(211): line: Date: Thu, Jun 19 2014 07:48:57 GMT
06-19 09:48:56.465: V/ARTSPConnection(211): line: Range: npt=0.000-59.977
06-19 09:48:56.465: V/ARTSPConnection(211): line: Session: 41241BFD
06-19 09:48:56.465: V/ARTSPConnection(211): line: RTP-Info: url=rtsp://IP_ADDR:8554/Jellyfish-3-Mbps.mkv/track1;seq=2003;rtptime=1125446341
06-19 09:48:56.465: I/MyHandler(211): PLAY completed with result 0 (Success)
06-19 09:48:56.465: W/MyHandler(211): set mInitialSeqNum to 2003 - by RTP-Info
06-19 09:48:56.465: W/MyHandler(211): postNormalPlayTimeMapping at 'accu' [1125446341, 0]
06-19 09:48:56.465: I/MyHandler(211): Time now established for all tracks.
06-19 09:48:56.465: I/MyHandler(211): PLAY CASE: posting postOnDemandAUBufferRequest for the first time
06-19 09:48:56.465: I/ARTPSource(211): Added the first buff with seq:2003 to Q
06-19 09:48:56.465: I/power(710): *** release_dvfs_lock : lockType : 1
06-19 09:48:56.465: D/SSRMv2:CustomFrequencyManagerService(710): releaseDVFSLockLocked : Getting Lock type frm List : DVFS_MIN_LIMIT frequency : 1350000 uid : 1000 pid : 710 tag : ACTIVITY_RESUME_BOOSTER@9
06-19 09:48:56.535: E/MP-Decision(1772): num online cores: 2 reqd : 1 available : 4 rq_depth:0.000000 hotplug_avg_load_dw: 20
06-19 09:48:56.535: E/MP-Decision(1772): DOWN cpu:1 core_idx:1 Ns:1.100000 Ts:190 total_time_down:206.000000
06-19 09:48:56.555: E/MyHandler(211): first segment unit rtpTime=1125446341 seq=2003
06-19 09:48:56.555: E/MyHandler(211): video only mode : disable buffering
06-19 09:48:56.565: V/MediaPlayerService(211): [10] notify (0xb74eb070, 1, 0, 0)
06-19 09:48:56.565: V/MediaPlayer(6975): message received msg=1, ext1=0, ext2=0
06-19 09:48:56.565: V/MediaPlayer(6975): prepared
06-19 09:48:56.565: V/MediaPlayer(6975): callback application
06-19 09:48:56.565: V/MediaPlayer(6975): back from callback
06-19 09:48:56.575: D/MediaPlayer(6975): getMetadata
06-19 09:48:56.575: V/MediaPlayer(6975): getVideoWidth
06-19 09:48:56.575: V/MediaPlayer-JNI(6975): getVideoWidth: 0
06-19 09:48:56.575: V/MediaPlayer(6975): getVideoHeight
06-19 09:48:56.575: V/MediaPlayer-JNI(6975): getVideoHeight: 0
06-19 09:48:56.575: V/MediaPlayer-JNI(6975): start
06-19 09:48:56.575: V/MediaPlayer(6975): start
最佳答案
您没有在粘贴的 session 中请求 RTP/UDP:
SETUP rtsp://IP_ADDR:5555/test.sdp/trackID=1 RTSP/1.0 Transport: RTP/AVP/TCP;unicast;interleaved=0-1
这会尝试通过 RTSP/TCP session 建立一个 RTP。由于 VLC 不支持此传输,因此它以 461
响应。这与我记得的一致,即 VLC 尚未实现此传输。然而,Live555 RTSP 服务器确实支持此选项,但我怀疑即使在那种情况下,您实际上是通过 RTSP/TCP 流式传输 RTP。
我建议寻找一个应用程序选项来选择传输。
一种可能是您的 LTE 服务提供商阻止了 UDP 数据包。您是否为所有移动设备使用相同的 LTE 服务提供商?
通过查看您的日志,一旦在特定时间范围内未收到数据,您的 RTSP 客户端自动切换传输。在针对 live555 服务器进行测试的情况下,即使 UDP 被阻止,这也会导致您成功接收流。因此,当从 VLC 流式传输时,您始终能够从 live555 接收,并且只能通过 WIFI 接收,因为 VLC 不支持交错传输。您可以通过编写一个简单的 UDP 应用程序来对此进行测试。
其他要检查的事情是详细检查其他移动设备的日志,并找出当它正常工作时您实际流式传输的内容。
关于Android RTSP/UDP "RTSP/1.0 461 Unsupported transport"通过蜂窝网络 (4G),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24287933/
我目前正在尝试让 g++ 工作,并查看 http://gcc.gnu.org/install/build.html ,我似乎找不到它在哪里说如何“执行编译器的 3 阶段 bootstrap ”。我在哪
James Powell 在他对即将举行的演示文稿的简短描述中说,他自豪地发明了最粗糙的 Python 单行代码之一: (None for g in g if (yield from g) and F
请告诉我我的证明是否正确 We have a connected graph, and specific vertex u in V(G). Suppose we compute the dfs tr
下面的test2和test3结果是不同的。 我对此感到困惑,因为它看起来像相同的逻辑,并且与linux bash ||逻辑不同。 $data = @( [PSCustomObject]@{St
我试图找到一个明确的 G 代码语法规范,而不是单个 G 代码的含义,我无处不在的规范,我的意思是详细的语法规范,目的是编写解析器。 我编写解析器没有问题,我只是在寻找语法规范,例如。我知道您不必总是为
我写了这个 mixin,但它循环了很多时间。你能帮我优化我的代码吗?或者你能建议一些其他的东西来获得想要的结果吗? dfgdfgsdfgsdf 最佳答案 希望这就是您要找的。 $spaces: (4,
默认情况下,g++ 似乎会省略未使用的类内定义方法的代码。示例 from my previous question : struct Foo { void bar() {} void baz(
是否可以将文件内容通过管道传送到 g++编译程序? 我想这样做是因为我想使用数据库中的文件而不是磁盘上的物理文件。可以通过我制作的 API 轻松检索文件内容。 例如,我想做这样的事情: g++ con
如何profile c++代码获取每行代码的调用次数和消耗时间,就像profile工具一样在 Matlab 中呢? 我尝试使用-fprofile-arcs之类的东西,但它只生成代码覆盖率报告,其中可以
如何在几行代码上禁用所有警告。可以使用 GCC 诊断功能禁用特定警告,但是否有针对所有警告的标志。我尝试了这个方法,但不起作用 #pragma GCC diagnostic push #pragma
我有一个链接到 opencv 2.2 的可执行文件。但是,我删除了 opencv 2.2 并安装了 opencv 2.3。 问题是,有没有办法在不重新编译整个源代码的情况下将这个可执行文件链接到新的共
在编译带有一些标志的以下文件时,是否可以让 g++ 显示错误? #include using namespace std; int main() { int arr[ 2 ]; cout
在学习 Haskell 时,我遇到了一个挑战,要找到两个函数 f 和 g,例如 f g 和 f 。 g 是等价的(并且是总计,因此像 f = undefined 或 f = (.) f 这样的东西不算
根据我的理解,Theta 位于 Big O 和 Omega 之间,但我看到了这个声明,但我无法理解为什么交集会出现在这里。我能否对 Θ(g(n)) = O(g(n)) ∩ Ω(g(n)) 获得数学和分
我需要为这个递归函数编写一个迭代函数。 int funcRec(int n){ if(n>1) { return 2*funcRec(n - 1) + 3*funcRec(n
我在 github repository 上有代码示例并在 travis-ci 上创建了一个构建便于复制。 最小的、完整的和可验证的例子 可能不是最小的,但我相信它足够小 它使用 boost.inte
编辑:我们将调用箭头 p纯如果存在这样的函数f即:p = arr f . 我试图更好地掌握 Haskell 中的 Arrows,我想弄清楚什么时候 f >>> (g &&& h) = (f >>> g
我有两个(或更多)函数定义为: val functionM: String => Option[Int] = s => Some(s.length) val functionM2: Int => Op
好像是的。任何直观或严肃的证据都值得赞赏。 最佳答案 没有。 我认为您的问题等同于:给定函数 f 和 g,f 是 O(g) 或 g 是 O(f) 是否总是正确的?这在 SE Computer Scie
如果我设法证明 f(n) = o(g(n))(小 o),那么这两个函数的总和 f( n) + g(n) 应该被“更大”的函数 g(n) 紧紧束缚。 然而,我在证明这一点时遇到了一些麻烦。 最佳答案 以
我是一名优秀的程序员,十分优秀!