Difference between revisions of "Webcam"
From Baltimore Node Wiki
Jump to navigationJump to search (Created page with 'http://baltimorenode.org/images/webcam.jpg') |
(Webcam current status) |
||
(13 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
+ | ==Current Status== | ||
+ | Baltimore Node-Cam is currently offline. ♪ | ||
+ | |||
+ | If you'd like to bring it back, bring it up at the meeting. :) | ||
+ | |||
+ | It never made it to the new space, for a couple reasons: | ||
+ | |||
+ | # Privacy | ||
+ | |||
+ | ==History== | ||
+ | |||
+ | ===Phase 1=== | ||
+ | |||
http://baltimorenode.org/images/webcam.jpg | http://baltimorenode.org/images/webcam.jpg | ||
+ | |||
+ | ===Phase 2=== | ||
+ | |||
+ | *[http://baltimorenode.org/images/webcam-backup/ Webcam Archive Page] | ||
+ | *[http://baltimorenode.org/images/webcam-backup/ Raw Archive Directory] | ||
+ | *[http://github.com/abachman/bnode-webcam/tree/master Code on github] | ||
+ | |||
+ | backup_images.sh : | ||
+ | <pre> | ||
+ | #!/bin/sh | ||
+ | |||
+ | OLDFILE=`md5sum /home/bnode/webcam-backup/$(ls /home/bnode/webcam-backup | tail -n1) | cut -d ' ' -f1` | ||
+ | |||
+ | NEWFILE=`md5sum /home/bnode/baltimorenode.org/public/images/webcam.jpg | cut -d ' ' -f1` | ||
+ | |||
+ | if [ "$OLDFILE" == "$NEWFILE" ]; then | ||
+ | echo "Still the same" | ||
+ | else | ||
+ | echo "NEW!" | ||
+ | cp /home/bnode/baltimorenode.org/public/images/webcam.jpg /home/bnode/webcam-backup/webcam-$(date +%Y%m%d%H%M%S).jpg | ||
+ | fi | ||
+ | |||
+ | </pre> | ||
+ | |||
+ | makeimagepage.rb: | ||
+ | |||
+ | <pre> | ||
+ | #!/usr/bin/env ruby | ||
+ | |||
+ | `touch /home/bnode/baltimorenode.org/public/webcam.html` | ||
+ | out = [] | ||
+ | File.open("/home/bnode/baltimorenode.org/public/webcam.html", 'w') do |f| | ||
+ | f.write("<html><head></head><body>") | ||
+ | f.write("<img src='images/webcam.jpg'><br><br>") | ||
+ | f.write("<ul><li>") | ||
+ | Dir.entries("/home/bnode/webcam-backup").sort.each do |e| | ||
+ | next if ['.', '..'].include? e | ||
+ | out << "<a href='images/webcam-backup/#{e}'>#{e}</a>" | ||
+ | end | ||
+ | f.write out.join('</li><li>') | ||
+ | f.write("</li></ul></body></html>") | ||
+ | end | ||
+ | puts "Linked to: \n* #{out.join("\n")}" | ||
+ | </pre> | ||
+ | |||
+ | The directory <code>/home/bnode/baltimorenode.org/public/images/webcam-backup</code> is symbolically linked to <code>/home/bnode/webcam-backup</code>. | ||
+ | |||
+ | When executed from the directory containing the webcam still, this command will create a time lapse video. | ||
+ | <pre> | ||
+ | mencoder -nosound mf://*.jpg -mf w=640:h=480:type=jpg:fps=5 -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=1000000 -o time_lapse-test.avi | ||
+ | </pre> | ||
+ | |||
+ | ===Phase 3=== | ||
+ | |||
+ | *Haml for html templating. | ||
+ | *Atom feed of stored photos. | ||
+ | *Only store images for two days, archive the rest. | ||
+ | |||
+ | ===Phase 4=== | ||
+ | |||
+ | Write a Flex/Flash based image browser / replay tool. |
Latest revision as of 04:16, 13 September 2019
Current Status[edit | edit source]
Baltimore Node-Cam is currently offline. ♪
If you'd like to bring it back, bring it up at the meeting. :)
It never made it to the new space, for a couple reasons:
- Privacy
History[edit | edit source]
Phase 1[edit | edit source]
Phase 2[edit | edit source]
backup_images.sh :
#!/bin/sh OLDFILE=`md5sum /home/bnode/webcam-backup/$(ls /home/bnode/webcam-backup | tail -n1) | cut -d ' ' -f1` NEWFILE=`md5sum /home/bnode/baltimorenode.org/public/images/webcam.jpg | cut -d ' ' -f1` if [ "$OLDFILE" == "$NEWFILE" ]; then echo "Still the same" else echo "NEW!" cp /home/bnode/baltimorenode.org/public/images/webcam.jpg /home/bnode/webcam-backup/webcam-$(date +%Y%m%d%H%M%S).jpg fi
makeimagepage.rb:
#!/usr/bin/env ruby `touch /home/bnode/baltimorenode.org/public/webcam.html` out = [] File.open("/home/bnode/baltimorenode.org/public/webcam.html", 'w') do |f| f.write("<html><head></head><body>") f.write("<img src='images/webcam.jpg'><br><br>") f.write("<ul><li>") Dir.entries("/home/bnode/webcam-backup").sort.each do |e| next if ['.', '..'].include? e out << "<a href='images/webcam-backup/#{e}'>#{e}</a>" end f.write out.join('</li><li>') f.write("</li></ul></body></html>") end puts "Linked to: \n* #{out.join("\n")}"
The directory /home/bnode/baltimorenode.org/public/images/webcam-backup
is symbolically linked to /home/bnode/webcam-backup
.
When executed from the directory containing the webcam still, this command will create a time lapse video.
mencoder -nosound mf://*.jpg -mf w=640:h=480:type=jpg:fps=5 -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=1000000 -o time_lapse-test.avi
Phase 3[edit | edit source]
- Haml for html templating.
- Atom feed of stored photos.
- Only store images for two days, archive the rest.
Phase 4[edit | edit source]
Write a Flex/Flash based image browser / replay tool.