svt-recorder 0.9.5 → 0.9.6

Sign up to get free protection for your applications and to get access to all the features.
data/ChangeLog CHANGED
@@ -1,4 +1,11 @@
1
- 2010-11-03 Björn Andersson <ba@sanitarium.se>, v0.9.5
1
+ 2012-01-15 Björn Andersson <ba@sanitarium.se>, v0.9.6
2
+
3
+ Patch received from Anders Eurenius (aes on Github) that will
4
+ retry a chunk download if it times out.
5
+
6
+ Thanks Anders!
7
+
8
+ 2010-11-03 Björn Andersson <ba@sanitarium.se>, v0.9.5
2
9
 
3
10
  * svt-recorder flushes the output buffers when printing information.
4
11
  * svt-recorder one dot in the progress meter is 1MB.
File without changes
@@ -1,4 +1,4 @@
1
- == VAD OCH VARFÖR
1
+ # VAD OCH VARFÖR
2
2
  Det här är ett program som tar adressen till en video hos SVT Play eller
3
3
  Play Rapport och spelar in den med högsta upplösningen tillgänglig till
4
4
  en fil på din dator. Populärt kallat "ladda ner".
@@ -8,33 +8,37 @@ SVT Play på min TV, men jag har ingen dator direkt kopplad till TV:n,
8
8
  så jag blir tvungen att först tanka ner programmet för att sedan
9
9
  spela upp det där.
10
10
 
11
- == SYSTEMKRAV:
11
+ # SYSTEMKRAV:
12
12
  - Ruby, version 1.8.7 eller senare
13
13
  - Rubygems
14
14
 
15
- == Installation
15
+ # Installation
16
16
  För att installera det här programmet så behöver du ha
17
17
  Ruby samt Rubygems installerat.
18
18
 
19
- === Linux
20
- === Debian/Ubuntu
19
+ ## Linux
20
+ ### Debian/Ubuntu
21
21
  Om du använder Ubuntu så kom ihåg att använda sudo!
22
22
 
23
23
  I ett Debian/Ubuntusystem så ser du till att ha det så här:
24
- # aptitude install rubygems
25
24
 
26
- === Fedora / RPM-baserat
25
+ # aptitude install rubygems
26
+
27
+ ### Fedora / RPM-baserat
27
28
  Installera Rubygems med Yum så tankar det ner Ruby med
28
- # yum install rubygems
29
29
 
30
- === Själva programmet
30
+ # yum install rubygems
31
+
32
+ ### Själva programmet
31
33
  När Ruby och Rubygems är installerat så skriver du:
32
- # gem install svt-recorder
34
+
35
+ # gem install svt-recorder
36
+
33
37
  (ibland så heter gem något annat, t ex gem1.8 eller gem1.9)
34
38
 
35
39
  Och nu är det bara att använda!
36
40
 
37
- === Windows
41
+ ## Windows
38
42
  Ladda ner Ruby från http://www.ruby-lang.org/en/downloads/.
39
43
  Jag använde Ruby 1.9.2 RubyInstaller.
40
44
 
@@ -44,8 +48,9 @@ installationsprogrammet frågar var du vill installera Ruby!
44
48
  Gå till Kör och skriv in: cmd
45
49
 
46
50
  I den nya kommandoprompten som kom upp skriv:
47
- > gem install svt-recorder
48
- [... programmet hämtas ned och installeras ...]
51
+
52
+ > gem install svt-recorder
53
+ [... programmet hämtas ned och installeras ...]
49
54
 
50
55
  Nu kan du använda svt-recorder från kommandoprompten, se nedan på användning.
51
56
 
@@ -53,11 +58,13 @@ OBS! Kännt problem att byta namn på filen när programmet frågar i Windows,
53
58
  sätt namnet direkt efter URL:en eller tryck ENTER för att godkänna det
54
59
  föreslagna namnet.
55
60
 
56
- == ANVÄNDNING:
57
- svt-recorder <SVT URL> [spara som namn]
61
+ # ANVÄNDNING:
62
+
63
+ svt-recorder <SVT URL> [spara som namn]
64
+
58
65
  Om inget namn är angett så kommer ett namn föreslås baserat på programmets namn.
59
66
 
60
- == ATT GÖRA:
67
+ # ATT GÖRA:
61
68
  - Göra namngivningen av filerna mer robust, i dagsläget så accepteras
62
69
  vad som helst som filnamn
63
70
  - Olika nedladdningsmetoder? (Inbyggd, wget)
@@ -49,19 +49,25 @@ class HTTPDownload
49
49
  mb_down = 0
50
50
  File.open(@file, 'wb+') do |file|
51
51
  @downloader.parts do |part|
52
- @server.request_get(File.join(@base_url.path, part), @headers) do |res|
53
-
54
- res.read_body do |body|
55
- file.write body
56
- downloaded += body.size
57
-
58
- if downloaded >= megabyte
59
- downloaded -= megabyte
60
- yield mb_down += 1
52
+ begin
53
+ @server.request_get(File.join(@base_url.path, part),
54
+ @headers) do |res|
55
+
56
+ res.read_body do |body|
57
+ file.write body
58
+ downloaded += body.size
59
+
60
+ if downloaded >= megabyte
61
+ downloaded -= megabyte
62
+ yield mb_down += 1
63
+ end
61
64
  end
62
- end
63
-
64
- end # /@server
65
+ end # /@server
66
+ rescue Timeout::Error
67
+ yield -1
68
+ @server = Net::HTTP.start(@base_url.host, @base_url.port)
69
+ retry
70
+ end
65
71
  end # /@list
66
72
  end # /File
67
73
  end
@@ -97,6 +103,6 @@ end
97
103
 
98
104
  HTTPDownload.new(downloader, output_file) do |down|
99
105
  print "Progress: "
100
- down.fetch_all {|part| print '.' }
106
+ down.fetch_all {|part| print (part > 0)? '.': 'r' }
101
107
  puts "\nFinished recording: #{output_file}"
102
108
  end
@@ -33,6 +33,6 @@ module SVT #:nodoc:
33
33
  end
34
34
  end
35
35
 
36
- VERSION = '0.9.5'
36
+ VERSION = '0.9.6'
37
37
  end
38
38
  end
@@ -1,3 +1,4 @@
1
+ # -*- coding: utf-8 -*-
1
2
  require './lib/svt/recorder'
2
3
 
3
4
  Gem::Specification.new do |s|
@@ -8,14 +9,14 @@ Gem::Specification.new do |s|
8
9
  s.email = 'ba@sanitarium.se'
9
10
  s.homepage = 'http://github.com/gaqzi/svt-recorder'
10
11
  s.summary = s.description
11
- s.files = %w{README README.en Rakefile Gemfile svt-recorder.gemspec ChangeLog} \
12
+ s.files = %w{README.md README.en.md Rakefile Gemfile svt-recorder.gemspec ChangeLog} \
12
13
  + Dir.glob('lib/svt/**/*.rb') \
13
14
  + Dir.glob('spec/*.rb') \
14
15
  + Dir.glob('spec/support/*')
15
16
  s.test_files = Dir.glob('spec/*_spec.rb')
16
17
  s.executables << 'svt-recorder'
17
18
  s.has_rdoc = true
18
- s.extra_rdoc_files = ['README.en']
19
+ s.extra_rdoc_files = ['README.en.md']
19
20
  s.rdoc_options << '-x spec --main lib/svt/recorder.rb --line-numbers'
20
21
  s.add_development_dependency('rspec', '>= 2.0.0')
21
22
  end
metadata CHANGED
@@ -1,48 +1,38 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: svt-recorder
3
- version: !ruby/object:Gem::Version
4
- prerelease: false
5
- segments:
6
- - 0
7
- - 9
8
- - 5
9
- version: 0.9.5
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.9.6
5
+ prerelease:
10
6
  platform: ruby
11
- authors:
12
- - "Bj\xC3\xB6rn Andersson"
7
+ authors:
8
+ - Björn Andersson
13
9
  autorequire:
14
10
  bindir: bin
15
11
  cert_chain: []
16
-
17
- date: 2010-11-03 00:00:00 +01:00
12
+ date: 2012-01-15 00:00:00.000000000 +01:00
18
13
  default_executable:
19
- dependencies:
20
- - !ruby/object:Gem::Dependency
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
21
16
  name: rspec
22
- prerelease: false
23
- requirement: &id001 !ruby/object:Gem::Requirement
17
+ requirement: &79029650 !ruby/object:Gem::Requirement
24
18
  none: false
25
- requirements:
26
- - - ">="
27
- - !ruby/object:Gem::Version
28
- segments:
29
- - 2
30
- - 0
31
- - 0
19
+ requirements:
20
+ - - ! '>='
21
+ - !ruby/object:Gem::Version
32
22
  version: 2.0.0
33
23
  type: :development
34
- version_requirements: *id001
24
+ prerelease: false
25
+ version_requirements: *79029650
35
26
  description: A program that helps you record videos from SVTPlay.se and PlayRapport.se
36
27
  email: ba@sanitarium.se
37
- executables:
28
+ executables:
38
29
  - svt-recorder
39
30
  extensions: []
40
-
41
- extra_rdoc_files:
42
- - README.en
43
- files:
44
- - README
45
- - README.en
31
+ extra_rdoc_files:
32
+ - README.en.md
33
+ files:
34
+ - README.md
35
+ - README.en.md
46
36
  - Rakefile
47
37
  - Gemfile
48
38
  - svt-recorder.gemspec
@@ -64,36 +54,30 @@ files:
64
54
  has_rdoc: true
65
55
  homepage: http://github.com/gaqzi/svt-recorder
66
56
  licenses: []
67
-
68
57
  post_install_message:
69
- rdoc_options:
58
+ rdoc_options:
70
59
  - -x spec --main lib/svt/recorder.rb --line-numbers
71
- require_paths:
60
+ require_paths:
72
61
  - lib
73
- required_ruby_version: !ruby/object:Gem::Requirement
62
+ required_ruby_version: !ruby/object:Gem::Requirement
74
63
  none: false
75
- requirements:
76
- - - ">="
77
- - !ruby/object:Gem::Version
78
- segments:
79
- - 0
80
- version: "0"
81
- required_rubygems_version: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - ! '>='
66
+ - !ruby/object:Gem::Version
67
+ version: '0'
68
+ required_rubygems_version: !ruby/object:Gem::Requirement
82
69
  none: false
83
- requirements:
84
- - - ">="
85
- - !ruby/object:Gem::Version
86
- segments:
87
- - 0
88
- version: "0"
70
+ requirements:
71
+ - - ! '>='
72
+ - !ruby/object:Gem::Version
73
+ version: '0'
89
74
  requirements: []
90
-
91
75
  rubyforge_project:
92
- rubygems_version: 1.3.7
76
+ rubygems_version: 1.6.2
93
77
  signing_key:
94
78
  specification_version: 3
95
79
  summary: A program that helps you record videos from SVTPlay.se and PlayRapport.se
96
- test_files:
80
+ test_files:
97
81
  - spec/svt_recorder_rapport_spec.rb
98
82
  - spec/svt_recorder_play_spec.rb
99
83
  - spec/svt_recorder_spec.rb