{"id":1820,"date":"2020-06-11T16:29:58","date_gmt":"2020-06-11T23:29:58","guid":{"rendered":"https:\/\/wp.colliertech.org\/cj\/?p=1820"},"modified":"2020-06-11T16:32:12","modified_gmt":"2020-06-11T23:32:12","slug":"recovering-videos-from-dv-tapes-with-canon-zr80","status":"publish","type":"post","link":"https:\/\/wp.c9h.org\/cj\/?p=1820","title":{"rendered":"Recovering videos from DV tapes with Canon ZR80"},"content":{"rendered":"<p>I am recovering some tapes from back in the day that some of you may enjoy.  Here is a log of the process so that maybe you can recover some of your own DV tapes.  Seems to work well in modern Debian.<\/p>\n<p>To attach to the camcorder, I used a <a href=\"https:\/\/wp.colliertech.org\/cj\/wp-content\/uploads\/2020\/06\/IMG_20200609_173708.jpg\">PCI-e card<\/a> that has an old firewire port and some ASIC on board.  The PCI card came up and loaded the correct kernel drivers.<\/p>\n<p><a href=\"https:\/\/www.google.com\/search?q=firewire+pci+card&amp;tbm=shop\">Here<\/a> is a search link so that you can buy a similar card.<\/p>\n<p>cjac@server0:~$ sudo lspci | grep 1394<br \/>\nb2:00.0 FireWire (IEEE 1394): VIA Technologies, Inc. VT6306\/7\/8 [Fire II(M)] IEE<br \/>\nE 1394 OHCI Controller (rev 46)<\/p>\n<p>cjac@server0:~$ sudo lsmod | grep -i firewire<br \/>\nfirewire_ohci          45056  0<br \/>\nfirewire_core          81920  7 firewire_ohci<br \/>\ncrc_itu_t              16384  1 firewire_core<\/p>\n<p>The dvgrab program is available on Debian under the dvgrab package.<br \/>\nYou can also install the libavc1394-tools package to get the dvcont program.<\/p>\n<p>cjac@server0:~$ sudo apt-get install dvgrab libavc1394-tools<\/p>\n<p>Turn the device to &#8220;VCR&#8221; mode, attach the firewire cable and wait about five minutes.  Have you watered the cat today?<\/p>\n<p>cjac@server0:~$ lsb_release -a<br \/>\nNo LSB modules are available.<br \/>\nDistributor ID: Debian<br \/>\nDescription:    Debian GNU\/Linux 10 (buster)<br \/>\nRelease:        10<br \/>\nCodename:       buster<br \/>\ncjac@server0:~$ uname -r<br \/>\n5.2.0-0.bpo.3-amd64<br \/>\ncjac@server0:~$ sudo modinfo firewire_ohci | grep vermagic<br \/>\nvermagic:       5.2.0-0.bpo.3-amd64 SMP mod_unload modversions<\/p>\n<p>cjac@server0:~$ dvcont status<br \/>\nWinding stopped<br \/>\ncjac@server0:~$ dvcont rewind<br \/>\ncjac@server0:~$ dvcont status<br \/>\nWinding reverse<br \/>\ncjac@server0:~$ dvcont status<br \/>\nWinding stopped<\/p>\n<p># make a directory to store the raw dv tape data and the<br \/>\n# transcodings<\/p>\n<p>cjac@server0:~$ mkdir -p \/srv\/nfs\/cj.backup\/dv\/oscon2006<\/p>\n<p># I&#8217;ve found that each tape stores around 12 GB of raw data, so be<br \/>\n# sure to perform this on a partition with tens of gigs of spare<br \/>\n# space<\/p>\n<p>cjac@server0:~$ cd \/srv\/nfs\/cj.backup\/dv\/oscon2006<br \/>\ncjac@server0:\/srv\/nfs\/cj.backup\/dv\/oscon2006$ dvgrab &#8211;autosplit &#8211;timestamp &#8211;size 0 &#8211;rewind oscon2006-<br \/>\nFound AV\/C device with GUID 0x0000850000e043cf<br \/>\nWaiting for DV&#8230;<br \/>\nCapture Started<br \/>\n&#8220;oscon2006-2006.07.26_12-37-44.dv&#8221;:   266.30 MiB  2327 frames timecode 00:01:17.26 date 2006.07.26 12:39:01<br \/>\n&#8220;oscon2006-2006.07.26_12-40-59.dv&#8221;:   816.76 MiB  7137 frames timecode 00:05:16.01 date 2006.07.26 12:44:57<br \/>\n&#8220;oscon2006-2006.07.26_12-45-06.dv&#8221;:  8420.56 MiB 73580 frames timecode 00:46:11.05 date 2006.07.26 13:26:01<br \/>\n&#8220;oscon2006-2006.07.26_13-32-08.dv&#8221;:  2961.27 MiB 25876 frames timecode 00:00:00.00 date 2020.06.10 10:46:25<br \/>\nCapture Stopped<\/p>\n<p>During the capture, the dvcont status will be &#8220;Playing&#8221;:<\/p>\n<p>cjac@server0:\/srv\/nfs\/cj.backup\/dv\/oscon2006$ dvcont status<br \/>\nPlaying<\/p>\n<p>In a different window of the screen session or I guess a new gnome-terminal, put together a transcoding environment.<br \/>\nlibx264-155<\/p>\n<p>cjac@server0:\/srv\/nfs\/cj.backup\/dv\/oscon2006$ sudo apt-get install libx264-155 libx264-148 ffmpeg libdatetime-format-duration-perl libdatetime-format-dateparse-perl libdatetime-perl<br \/>\ncjac@server0:\/srv\/nfs\/cj.backup\/dv\/oscon2006$ wget https:\/\/raw.githubusercontent.com\/cjac\/dvscripts\/master\/transcode.pl &amp;&amp; chmod u+x transcode.pl<br \/>\n# review transcode.pl, change $prefix<br \/>\n.\/transcode.pl<\/p>\n<p>The script will detect partial transcodes and do the right thing generally, so don&#8217;t worry too much about running .\/transcode.pl too often.<\/p>\n<p>Results are being stored in various places including<\/p>\n<p><a href=\"http:\/\/web.c9h.org\/~cjac\/raku\/videos\/\">http:\/\/web.c9h.org\/~cjac\/perl\/videos\/<\/a><\/p>\n\n<div class=\"twitter-share\"><a href=\"https:\/\/twitter.com\/intent\/tweet?via=cjamescollier\" class=\"twitter-share-button\">Tweet<\/a><\/div>\n","protected":false},"excerpt":{"rendered":"<p>I am recovering some tapes from back in the day that some of you may enjoy. Here is a log of the process so that maybe you can recover some of your own DV tapes. Seems to work well in modern Debian. To attach to the camcorder, I used a PCI-e card that has an [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[199,54,307,17,122,79,171,203,181,204,116,47,102,69,18,226,245,66],"tags":[],"class_list":["post-1820","post","type-post","status-publish","format-standard","hentry","category-ajax","category-amazon","category-buster","category-debian","category-family","category-free-software","category-hardware","category-html","category-irc","category-javascript","category-language","category-linux","category-open-source","category-oscon-2006","category-perl","category-proliant","category-storage","category-web-20"],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p1YDIB-tm","jetpack_sharing_enabled":true,"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/wp.c9h.org\/cj\/index.php?rest_route=\/wp\/v2\/posts\/1820","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wp.c9h.org\/cj\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wp.c9h.org\/cj\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wp.c9h.org\/cj\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/wp.c9h.org\/cj\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1820"}],"version-history":[{"count":5,"href":"https:\/\/wp.c9h.org\/cj\/index.php?rest_route=\/wp\/v2\/posts\/1820\/revisions"}],"predecessor-version":[{"id":1828,"href":"https:\/\/wp.c9h.org\/cj\/index.php?rest_route=\/wp\/v2\/posts\/1820\/revisions\/1828"}],"wp:attachment":[{"href":"https:\/\/wp.c9h.org\/cj\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1820"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wp.c9h.org\/cj\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1820"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wp.c9h.org\/cj\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1820"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}