rtsp_server 0.0.4 → 0.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/rtsp/server.rb +17 -7
- data/lib/rtsp/socat_streaming.rb +2 -2
- data/lib/rtsp/version.rb +1 -1
- metadata +35 -35
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: df5443ff82faa1499e38e8d5f5a09c8255d3ebe7
|
4
|
+
data.tar.gz: 8c317116787c5e0222389b8ba73b97fba4413ffb
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e4435667c4132eae51e487d709720628ede839b7dbafa9d00575654144d1a0e4b33a535f9e1bb40b6202b48bf2a9b85c09ff0de6a2447721d569611c8d70bec0
|
7
|
+
data.tar.gz: 7c7c300939245e32ea545df524dd846e7674718d26de522abf315d18d802b34ac28f46fa0138e8a3fd3c21ac419bfaa3b39569aeb20cefce0ccfa87933888cf1
|
data/lib/rtsp/server.rb
CHANGED
@@ -90,15 +90,22 @@ module RTSP
|
|
90
90
|
|
91
91
|
begin
|
92
92
|
request_str << io.read_nonblock(500)
|
93
|
-
rescue
|
94
|
-
return -1 if count > 50
|
93
|
+
rescue IO::WaitReadable
|
95
94
|
count += 1
|
96
|
-
sleep 0.
|
97
|
-
|
95
|
+
sleep 0.001
|
96
|
+
sleep 1 if count > 10
|
97
|
+
count = 0 unless request_str == ""
|
98
|
+
retry if count < 50
|
99
|
+
return -1 if request_str == ""
|
98
100
|
end
|
101
|
+
|
102
|
+
responses = []
|
99
103
|
|
100
|
-
|
101
|
-
|
104
|
+
request_str.split("\r\n\r\n").each do |r|
|
105
|
+
responses << process_request(r, io)
|
106
|
+
end
|
107
|
+
|
108
|
+
io.send(responses.join, 0)
|
102
109
|
end
|
103
110
|
|
104
111
|
# Process an RTSP request
|
@@ -229,8 +236,10 @@ module RTSP
|
|
229
236
|
RTSP::Server.log "Received TEARDOWN request from #{request.remote_host}"
|
230
237
|
sid = request.session[:session_id]
|
231
238
|
@stream_server.stop_streaming sid
|
239
|
+
response = []
|
240
|
+
response << "\r\n"
|
232
241
|
|
233
|
-
[
|
242
|
+
[response]
|
234
243
|
end
|
235
244
|
|
236
245
|
# Handles a pause request.
|
@@ -242,6 +251,7 @@ module RTSP
|
|
242
251
|
response = []
|
243
252
|
sid = request.session[:session_id]
|
244
253
|
response << "Session: #{sid}"
|
254
|
+
response << "\r\n"
|
245
255
|
@stream_server.disconnect sid
|
246
256
|
|
247
257
|
[response]
|
data/lib/rtsp/socat_streaming.rb
CHANGED
@@ -128,7 +128,7 @@ module RTSP
|
|
128
128
|
#
|
129
129
|
# @param[Boolean] multicast True if the description is for a multicast stream.
|
130
130
|
# @param [Fixnum] stream_index Index of the stream type.
|
131
|
-
def description
|
131
|
+
def description(multicast=false, stream_index=1)
|
132
132
|
rtp_map = @rtp_map[stream_index - 1] || H264_RTP_MAP
|
133
133
|
fmtp = @fmtp[stream_index - 1] || H264_FMTP
|
134
134
|
|
@@ -143,7 +143,7 @@ a=type:broadcast\r
|
|
143
143
|
a=control:*\r
|
144
144
|
a=range:npt=0-\r
|
145
145
|
a=x-qt-text-nam:Session streamed by "Streaming Server"\r
|
146
|
-
a=x-qt-text-inf:
|
146
|
+
a=x-qt-text-inf:stream#{stream_index}#{multicast ? 'm' : ''}\r
|
147
147
|
m=video #{multicast ? @source_port[stream_index - 1] : 0} RTP/AVP 96\r
|
148
148
|
c=IN IP4 #{multicast ? "#{multicast_ip(stream_index)}/10" : "0.0.0.0"}\r
|
149
149
|
a=rtpmap:#{rtp_map}\r
|
data/lib/rtsp/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rtsp_server
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Steve Loveless, Mike Kirby
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2014-01-16 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: parslet
|
@@ -194,48 +194,48 @@ extra_rdoc_files:
|
|
194
194
|
- LICENSE.rdoc
|
195
195
|
- README.rdoc
|
196
196
|
files:
|
197
|
-
-
|
197
|
+
- .gemtest
|
198
|
+
- ChangeLog.rdoc
|
199
|
+
- Gemfile
|
200
|
+
- LICENSE.rdoc
|
201
|
+
- README.rdoc
|
202
|
+
- Rakefile
|
203
|
+
- bin/rtsp_client
|
204
|
+
- features/client_changes_state.feature
|
205
|
+
- features/client_requests.feature
|
206
|
+
- features/control_streams_as_client.feature
|
207
|
+
- features/step_definitions/client_changes_state_steps.rb
|
208
|
+
- features/step_definitions/client_requests_steps.rb
|
209
|
+
- features/step_definitions/control_streams_as_client_steps.rb
|
210
|
+
- features/support/env.rb
|
211
|
+
- features/support/hooks.rb
|
198
212
|
- lib/ext/logger.rb
|
199
|
-
- lib/rtsp
|
200
|
-
- lib/rtsp/socat_streaming.rb
|
201
|
-
- lib/rtsp/transport_parser.rb
|
202
|
-
- lib/rtsp/message.rb
|
203
|
-
- lib/rtsp/stream_server.rb
|
204
|
-
- lib/rtsp/helpers.rb
|
205
|
-
- lib/rtsp/global.rb
|
206
|
-
- lib/rtsp/server.rb
|
213
|
+
- lib/rtsp.rb
|
207
214
|
- lib/rtsp/client.rb
|
208
215
|
- lib/rtsp/common.rb
|
216
|
+
- lib/rtsp/error.rb
|
217
|
+
- lib/rtsp/global.rb
|
218
|
+
- lib/rtsp/helpers.rb
|
219
|
+
- lib/rtsp/message.rb
|
209
220
|
- lib/rtsp/request.rb
|
210
|
-
- lib/rtsp/version.rb
|
211
221
|
- lib/rtsp/response.rb
|
212
|
-
-
|
213
|
-
-
|
214
|
-
-
|
215
|
-
-
|
216
|
-
-
|
222
|
+
- lib/rtsp/server.rb
|
223
|
+
- lib/rtsp/socat_streaming.rb
|
224
|
+
- lib/rtsp/stream_server.rb
|
225
|
+
- lib/rtsp/transport_parser.rb
|
226
|
+
- lib/rtsp/version.rb
|
227
|
+
- rtsp.gemspec
|
228
|
+
- spec/rtsp/client_spec.rb
|
217
229
|
- spec/rtsp/helpers_spec.rb
|
230
|
+
- spec/rtsp/message_spec.rb
|
218
231
|
- spec/rtsp/response_spec.rb
|
219
|
-
- spec/rtsp/client_spec.rb
|
220
232
|
- spec/rtsp/transport_parser_spec.rb
|
221
|
-
-
|
233
|
+
- spec/rtsp_spec.rb
|
234
|
+
- spec/spec_helper.rb
|
235
|
+
- spec/support/fake_rtsp_server.rb
|
222
236
|
- tasks/roodi.rake
|
223
237
|
- tasks/roodi_config.yaml
|
224
|
-
-
|
225
|
-
- ChangeLog.rdoc
|
226
|
-
- README.rdoc
|
227
|
-
- .gemtest
|
228
|
-
- rtsp.gemspec
|
229
|
-
- Gemfile
|
230
|
-
- Rakefile
|
231
|
-
- features/client_requests.feature
|
232
|
-
- features/client_changes_state.feature
|
233
|
-
- features/step_definitions/client_changes_state_steps.rb
|
234
|
-
- features/step_definitions/control_streams_as_client_steps.rb
|
235
|
-
- features/step_definitions/client_requests_steps.rb
|
236
|
-
- features/support/env.rb
|
237
|
-
- features/support/hooks.rb
|
238
|
-
- features/control_streams_as_client.feature
|
238
|
+
- tasks/stats.rake
|
239
239
|
homepage: https://github.com/turboladen/rtsp
|
240
240
|
licenses:
|
241
241
|
- MIT
|
@@ -256,7 +256,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
256
256
|
version: '0'
|
257
257
|
requirements: []
|
258
258
|
rubyforge_project:
|
259
|
-
rubygems_version: 2.
|
259
|
+
rubygems_version: 2.2.1
|
260
260
|
signing_key:
|
261
261
|
specification_version: 4
|
262
262
|
summary: Library to allow RTSP streaming from RTSP-enabled devices.
|