forked from ddennedy/dvgrab
-
Notifications
You must be signed in to change notification settings - Fork 0
/
ChangeLog
711 lines (523 loc) · 25.7 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
dvgrab ChangeLog
(c) 2000-2003 Arne Schirmacher dvgrab@schirmacher.de
(c) 2002-2009 Dan Dennedy <dan@dennedy.org>
SEE the NEWS file for RELEASE NOTES!
----- v3.5 released -----
2009-09-07 Dan Dennedy <dan@dennegy.org>
- iec13818-1.{h,cc}, iec13818-2.{h,cc}: apply patch from Arren to remove
compiler warnings (2804114).
- filehandler.cc: apply fix to undefined return value in
QtHandler::GetFileSize() from Arren (2813664).
- dvgrab.cc: remove (H)DV timeout and replace with "Waiting" message per
Carl Karsten's suggestion.
- filehandler.cc: apply patch from Marcel Mol to allow both -timecode
and -timestamp or -timesys (2706278).
- ieee1394io.cc: fix deadlock on SIGINT/SIGTERM with -stdin
or -input(2460025).
2009-04-10 Dan Dennedy <dan@dennegy.org>
- main.cc: apply patch from Jarod Wilson to set retval to 1 if we get
an error, to make life easier for folks who wrap dvgrab to tell if
something went wrong (rhbz #486061).
- error.cc, smiltime.cc: apply patch from Jarod Wilson to fix build
on gcc 4.4.
- ieee1394io.{h,cc}: added AVC:isHDV().
- dvgrab.cc: try to automatically detect HDV devices and set file format.
----- v3.4 released -----
2009-02-14 Dan Dennedy <dan@dennegy.org>
- main.cc: bugfix failure to start due to regression in 3.3.
----- v3.3 released -----
2009-01-14 Dan Dennedy <dan@dennedy.org>
- ieee1394io.{h,cc}, dvgrab.{h,cc}: separate the warnings for dropped
versus damaged frames.
- main.cc: silence warnings about inability to change scheduling class
and lock memory.
- ieee1394io.cc: return false on invalid timecode in AVC::Timecode().
- io.c: read terminal every 125ms instead of 1s.
- dvgrab.cc: in interactive mode display invalid timecode as
"--:--:--:--" instead of "ff:ff:ff:ff" and suppress filename when
no capture is in progress instead of displaying "stdout".
- dvgrab.cc: reduce the frequency of AVC::TransportStatus calls making
it consistently every ~125ms.
- filehandler.cc: remove "deprecated conversion from string constant"
warnings.
- dvgrab.{cc,1}: add 'avi' as alias for dv2 and 'mov' as alias for qt.
2009-01-04 Dan Dennedy <dan@dennedy.org>
- dvframe.cc, filehandler.cc: bugfix compilation errors when not using
libdv due to missing includes.
2008-11-25 Dan Dennedy <dan@dennedy.org>
- v4l2reader.cc: bugfix (2337246) hang on interrupting capture with no
valid data received. Also, bugfix double free on exit.
- most files: updated copyrights.
- dvgrab.1: fix (2313429) missing hyphens.
2008-11-19 Dan Dennedy <dan@dennedy.org>
- dvgrab.cc: bugfix (2313380) premature exit/stop capture when using
live/record mode - this time to cover more use cases.
2008-11-18 Dan Dennedy <dan@dennedy.org>
- dvgrab.cc: bugfix (2313380) premature exit/stop capture when using
live/record mode on device instead of VCR and not using -record
option.
2008-11-09 Dan Dennedy <dan@dennedy.org>
- filehandler.cc: bugfix -timestamp option not putting file extension
on filename.
----- v3.2 released -----
2008-08-04 Dan Dennedy <dan@dennedy.org>
- filehandler.{h,cc}, dvgrab.{h,cc}, dvgrab.1, srt.{h,cc}: apply patch
from Pelayo Bernedo to add -srt option and optional arg to -autosplit
to perform splits on gaps in recording date/time.
2008-07-24 Dan Dennedy <dan@dennedy.org>
- filehandler.cc: bugfix autosplit not detecting timecode discontinuity
when timecode reverses a small amount - any backwards timecode event
should be considered discontinuous.
- configure.in, Makefile.am, config.h.in: switch to pkg-config for
libavc1394-related build stuff.
2008-07-22 Dan Dennedy <dan@dennedy.org>
- filehandler.cc: bugfix autosplit not detecting timecode discontinuity
when timecode resets or jumps way back in time.
- dvgrab.cc, ieee1394io.cc, raw1393util.c: bugfix memory leaks reported
by valgrind.
- filehandler.cc, smiltime.cc, stringutils.cc: set std::ends on
stringstreams in case it helps.
2008-07-02 Dan Dennedy <dan@dennedy.org>
- dvframe.cc, dvgrab.cc: apply patches from Patrick Mansfield to prevent
stack corruption on invalid DV timecodes.
2008-02-26 Dan Denendy <dan@dennedy.org>
- dvgrab.cc: bugfix short option '-a' not working.
- dvgrab.{h,cc,1}: added -recordonly (short -r ) option.
- dvgrab.{h,cc}: added ability to stop capture at end of tape.
- dvgrab.{h,cc,1}: added -rewind option to fully rewind tape before capture.
- filehandler.cc: fix reporting bogus file size.
- apply patch from Jarod Wilson/Red Hat to fix compilation with gcc 4.3.
2007-12-11 Dan Denendy <dan@dennedy.org>
- filehandler.cc: bugfix frame dropping with -24pa option.
----- v3.1 released -----
2007-12-04 Dan Denendy <dan@dennedy.org>
- filehandler.{h,cc}, dvgrab.{h,cc}, dvgrab.1:
Apply 24p patch from Joe Stewart/CinCVS which adds -24p and -24pa
options for Quicktime DV output:
https://init.linpro.no/pipermail/skolelinux.no/cinelerra/2006-October/008095.html
2007-11-21 Dan Dennedy <dan@dennedy.org>
- filehandler.cc: apply patch to fix writen returning -1 on failure.
- riff.{h,cc}, dvgrab.{h,cc}, iec13818-2.cc, ieee1394io.h,
v4l2reader.{h,cc}: add const to char* to reduce compiler warnings.
2007-11-12 Dan Dennedy <dan@dennedy.org>
- iec13818-1.cc: bugfix (1828106) transport_scrambling_control() not
returning value.
2007-11-06 Dan Dennedy <dan@dennedy.org>
- hdvframe.{h,cc}: apply patch from Lars Täuber to fix P25 detection.
2007-11-01 Dan Dennedy <dan@dennedy.org>
- hdvframe.h: apply patch 1823641 to address bug 1773826 and prevent
message "ERROR: too much carryover data."
- filehandler.{h,cc}, dvgrab.{h,cc}, frame.h, hdvframe.{h,cc}, dvgrab.1:
apply patch from Lars Täuber to process JVC P25 mode HDV (-jvc-p25).
- error.h, iec13818-2.{h,cc}: apply patch 1823069 from Dan Streetman to
improve HDV debug logging. The [S] slice debugging is compacted into
[S*n]; the default DEBUG does a newline now instead of a \r (i.e. it
preserves the previous debug output on the screen); the GOP Dump()
method has a fix in the format string.
- dvgrab.1, dvgrab.cc: address bug 1810616 by using mebibyte and MiB.
- dvgrab.cc: bugfix 1810641 by not using lockstep unless a value greater
than zero is supplied for -frames.
- dvgrab.h: bugfix default format to raw.
- ieee1394io.{h,cc}: bugfix segfault on StopThread() on reported by
Jarod Wilson.
- ieee1394io.{h,cc}: bugfix assertion in libiec61883 - removed union in
iec61883Reader to keep it simple.
2007-09-11 Dan Dennedy <dan@dennedy.org>
- filehandler.cc: apply patch from David Arendt to fix potential data loss
due to short write on raw DV and MPEG2-TS files.
- ieee1394io.cc: bugfix hang at end of reading from stdin.
2007-09-04 Dan Dennedy <dan@dennedy.org>
- dvgrab.cc: bugfix pipe output in conjunction with file capture.
2007-08-30 Dan Dennedy <dan@dennedy.org>
- configure.in: added explicit --with options to suppress dependencies
on libdv, libquicktime, and libjpeg.
- dvframe.h: fix broken compilation without libdv.
----- v3.0 released -----
2007-08-06 Dan Dennedy <dan@dennedy.org>
- configure.in, v4lreader.{h,cc}, dvgrab.cc: fix compiling without
linux/videodev2.h.
- iec13818-2.cc: bugfix virtual infinite loop while parsing mpeg2
visual sequence end packet.
2007-07-28 Dan Dennedy <dan@dennedy.org>
- dvframe.h: define CLAMP if not building with libdv.
- dvgrab.1, dvgrab.h: change default DV file format to raw.
- dvgrab.1, v4l2reader.{h,c}, dvgrab.cc: add support for DV-over-USB
(linux uvcvideo) with new -v4l2 option.
2007-07-08 Dan Dennedy <dan@dennedy.org>
- stringutils.{h,cc}: added toUpper and toLower methods.
- dvgrab.{h,cc}, dvgrab.1: infer format from filename extension.
- dvgrab.cc, dvgrab.1: sort the options, document more options, add more
short options.
2007-07-06 Dan Dennedy <dan@dennedy.org>
- avi.{h,cc}, dvframe.{h,cc}, dvgrab.{h,cc}, error.{h,cc},
filehandler.{h,cc}, frame.{h,cc}, hdvframe.{h,cc}, iec13818-1.{h,cc},
iec13818-2.{h,cc}, ieee1394io.{h,cc}, main.cc: apply patch 1703694
from Dan Streetman adding HDV support.
- dvgrab.{h,cc}, filehandler.cc, frame.h, hdvframe.{h,cc},
iec13818-1.{h,cc}, iec13818-2.{h,cc}: apply patch 1705146 from Dan
Streetman improving mpeg2ts timecode parsing.
- dvgrab.cc, error.{h,cc}, hdvframe.cc, iec13818-1.{h,cc}, iec13818-2.cc,
main.cc: apply patch 1705292 from Dan Streetman to enhance mpeg2ts
parser debug logging.
- dvgrab.cc: remove --dv and --hdv, making hdv usage automatic via
--format mpeg2 with mpeg2ts or hdv as aliases.
- dvgrab.cc, dvgrab.1: use getopt_long_only to allow single hyphen in
addition to double hyphen.
- dvgrab.cc, filehandler.cc: regression bugfixes
- raw1394util.c: add discovery of Motorola DCT setop boxes (mpeg2-ts).
- dvgrab.1, dvgrab.cc, raw1394util.{h,c}: improve support for settop
boxes with -guid=1, which discovers AND sets up p2p connection. Also,
reset bus prior to exit and suggest retry upon timeout on mpeg2ts.
- dvgrab.cc: bugfix off-by-one in -duration handling.
2007-01-14 Dan Dennedy <dan@dennedy.org>
- filehandler.{h,cc}, dvgrab.{h,cc}, dvgrab.1: apply patch (bug 1629632)
from Koen Martens to accept a temporary file in jpeg-overwrite mode
and then rename to target file. This prevents other apps (web server,
stopmotion) from receiving partial images.
- dvgrab.cc: ignore timecode for detecting pause in jpeg-overwrite mode.
----- v2.1 released -----
2006-12-19 Dan Dennedy <dan@dennedy.org>
- dvgrab.cc: do not capture frames with zero timecode. My camera sends
zero timecode when paused in recording mode. Maybe yours does too.
- filehandler.{h,cc}: do not change filename in --jpeg-overwrite mode.
Only appends extension to base name if extension not in base. Does not
put numbers or timecode or other into filename.
2006-03-03 Dan Dennedy <dan@dennedy.org>
- dvgrab.1: remove GNU FDL license from man page upon request by Daniel
Kobras.
- configure.in, Makefile.am, filehandler.h: improve building against
libquicktime.
- filehandler.cc: bugfix usage of private member of quicktime4linux API.
- avi.h, avi.cc: prevent macro name clash on AVI_INDEX_OF_... with
quicktime4linux qtprivate.h.
2005-09-25 Dan Dennedy <dan@dennedy.org>
- ieee1394io.h, ieee1394io.cc: drop the GetIncompleteFrames method.
- ieee1394io.cc: set the number of bytes in Frame() based upon info
from libiec61883 to properly detect incomplete state in Frame object.
- dvgrab.cc: bugfix incomplete frame handling so as to not drop a complete
frame due to an asynchronous IEEE1394Reader::GetIncompleteFrames
event. Instead, rely soley upon the fixed Frame::IsComplete.
----- v2.0 released -----
2005-04-08 Dan Dennedy <dan@dennedy.org>
- main.cc: apply realtime and priority scheduling and memory locking as
used in dvconnect.
- riff.cc, riff.h, avi.cc, avi.h, endian_types.h (added): make RIFF
and AVI classes endian and architecture safe (Daniel Kobras).
2005-03-29 Dan Dennedy <dan@dennedy.org>
- dvgrab.cc: added lockstep_maxdrops and lockstep_totaldrops options.
2005-03-25 Dan Dennedy <dan@dennedy.org>
- ieee1394io.cc: separate dropped from incomplete frames;
remove mutex lock in iec61883Reader::StopThread to prevent deadlock
on exit;
update iec61883Connection to libiec61883 API changes.
- dvgrab.cc: reorganize capture thread method;
make lockstep repeat frames when frames are dropped rather than truncate.
2005-03-21 Dan Dennedy <dan@dennedy.org>
- dvgrab.cc: ensure cleanup and error reporting on failure after a bus
reset.
2005-02-07 Dan Dennedy <dan@dennedy.org>
- smiltime.h, smiltime.cc: added parseSmpteNtscDropValue()
- dvgrab.cc: use proper timecode parser for NTSC drop-frame to fixup
lockstep.
2005-02-04 Dan Dennedy <dan@dennedy.org>
- added --lockstep option
2005-01-31 Dan Dennedy <dan@dennedy.org>
- dvgrab.cc: disable some erroneous usage of some AV/C commands that
interferes with bus reset handling and --nostop.
- dvgrab.cc: reduce timeout to 1 second in bus reset handler.
2005-01-27 Dan Dennedy <dan@dennedy.org>
- ieee1394io.h, ieee1394io.cc: add an optional seconds parameter to
IEEE1394Reader::WaitForAction() and add iec61883Connection::Reconnect()
that uses new libiec61883 function.
- dvgrab.cc: do not issue AV/C pause when not interactive and use
WaitForAction in bus reset watchdog thread.
- ieee1394io.h, ieee1394io.cc, dvgrab.cc: added iec61883Connection::CheckConsistency()
2005-01-26 Dan Dennedy <dan@dennedy.org>
- ieee1394io.cc, ieeee1394io.h, dvgrab.cc, dvgrab.h: check for DV in a
watchdog thread upon bus reset.
2005-01-25 Dan Dennedy <dan@dennedy.org>
- dvgrab.cc, dvgrab.h: disable sending raw dv to stdout when stdout is
not a tty unless '-' is on command line.
- dvgrab.cc, dvgrab.h: added --nostop to prevent sending AV/C stop
command on exit.
- filehandler.cc, dvgrab.cc, dvgrab.1: added --timecode option.
2004-12-11 Dan Dennedy <dan@dennedy.org>
- ieee1394io.cc, dvgrab.cc: drop legacy raw1394 and dv1394 capture and add
libiec61883 support with connection management.
2004-12-07 Dan Dennedy <dan@dennedy.org>
- dvgrab.cc: fix display of --dv1394 option in usage report.
----- v1.7 released -----
2004-11-29 Dan Dennedy <dan@dennedy.org>
- configure.in: remove unnecessary check for dv1394.h
- ieee1394io.cc: remove libraw1394 0.8 compatibility cruft
- dvgrab.cc: make duration option more accurate
2004-10-26 Dan Dennedy <dan@dennedy.org>
- dvgrab.1: correct the --frames example.
2004-08-21 Dan Dennedy <dan@dennedy.org>
- ieee1394io.cc: cleanup reception thread cancellation issues by removing
blocking 1394 I/O calls
2004-08-16 Dan Dennedy <dan@dennedy.org>
- remove debian directory
- ieee1394io.cc: bugfix deadlock on stop capture for dv1394
2004-08-12 Dan Dennedy <dan@dennedy.org>
- smiltime.cc: bugfix indefinite state
----- v1.6 released -----
2004-07-21 Dan Dennedy <dan@dennedy.org>
- dvgrab.{h,cc}, filehandler.{h,cc}, dvgrab.1: added --timesys option --
similar to --timestamp but using system time instead.
2004-07-13 Dan Dennedy <dan@dennedy.org>
- dv1394.h: added since no longer in libdv
- ieee1394io.cc: prevent potential deadlock on stopping threads
(patch from Jean-Francois Panisset <panisset@comcast.net>)
- ieee1394io.{h,cc}: cleanup usage of statics and threads
- dvgrab.{1,cc,h}, filehandler.{cc,h}: added --csize and --cmincutsize opts.
(patch from Pierre Marc Dumuid <pierre.dumuid@student.adelaide.edu.au>)
----- v1.5 released -----
2004-01-14 Dan Dennedy <dan@dennedy.org>
- dvgrab.cc: bugfix --every option
2004-01-06 Dan Dennedy <dan@dennedy.org>
- riff.h: 64bit OS fix.
2003-12-29 Dan Dennedy <dan@dennedy.org>
- filehandler.cc, dvgrab.cc: bugfix autosplit first frame of new recording
appearing as last frame of previous file (DVGRAB-20).
- dvgrab.cc: bugfix type 2 AVI audio stream frequency setting when
starting capture from non-playing state.
- dvgrab.cc: enhanced autosplit by checking timecode continuity (DVGRAB-2).
2003-12-27 Arne Schirmacher <arne@schirmacher.de>
- bugfix broken file when file size was between 1008 and 1024 MByte and
OpenDML was not turned on (DVGRAB-17, patch from Andrew Church)
- bugfix file size displayed was always xxx.00 MB (DVGRAB-19, patch from
Andrew Church)
2003-12-09 Dan Dennedy <dan@dennedy.org>
- ieee1394io.cc: revise AV/C Record mode to never issue a record command
on AVC::Play or AVC::Pause.
- filehandler.cc: bugfix notification of capture file on autosplit.
- dvgrab.1: bugfix to remove erroneous short option -i on --noavc.
2003-11-24 Dan Dennedy <dan@dennedy.org>
- ieee1394io.cc, dvgrab.cc: make camera (AV/C Record) mode work correctly
(toggle record / pause).
----- v1.4 released -----
2003-11-16 Dan Dennedy <dan@dennedy.org>
- dvgrab.cc:: in startCapture() check g_done when waiting for initial
frame to allow interruption.
- all: remove use of deprecated strstream, using sstream and ostringstream.
- all: fixup pretty make target and run against all code to reformat.
- configure.in: bump version
2003-11-09 Dan Dennedy <dan@dennedy.org>
- frame.cc: bugfix speed detection on DVCPRO (SMPTE 314M)
- avi.cc: remove addition of JUNK chunks in the MOVI list to
reduce memory overhead of RIFF Directory and reduce file sizes.
2003-10-13 Dan Dennedy <dan@dennedy.org>
- bugfix parsing new boolean options --stdin and --noavc if last on
command line.
- bugfix sigint handling
- added --guid option to select device.
- make --noavc not do bus probes if not necessary.
- make arg to --dv1394 optional for use with devfs.
2003-10-09 Dan Dennedy <dan@dennedy.org>
- dvgrab.cc, dvgrab.1: make default --frames = 0, document 0 is unlimited,
fix documentation of SMIL time (.ms optional
- dvgrab.cc: make opendml default off, ring bell on frame drop
2003-10-08 Dan Dennedy <dan@dennedy.org>
- added option --noavc to disable use of any AV/C.
2003-10-07 Dan Dennedy <dan@dennedy.org>
- make --duration option work with piped output too.
2003-09-26 Dan Dennedy <dan@dennedy.org>
- require option --stdin to read from a pipe.
----- v1.3 released -----
2003-09-26 Dan Dennedy <dan@dennedy.org>
- added support for saving raw DV with .dif extension for MainActor5.
- added support for reading raw DV on stdin instead of 1394 in non-
interactive mode.
- added --duration option with SMIL time value parser.
- updated man page.
2003-09-17 Dan Dennedy <dan@dennedy.org>
- added interactive mode with AV/C control
- send AV/C play prior to capture on non-interactive capture
- make dv2 default format
- simultaneous capture and rawdv on stdout
- automatically discover camera on any port (overridden via --card)
- bump version to 1.3
2003-04-21 Dan Dennedy <dan@dennedy.org>
- Applied patch from Daniel Kobras with some changes. Return success/failure
on AVI and FileHandler WriteFrame methods. Automatically enable OpenDML
feature if --size >1GB or --size = 0 (unlimited).
2003-02-22 Dan Dennedy <dan@dennedy.org>
- added JPEG overwriting mode (--jpeg-overwrite)
(update the same jpeg instead of seqentially numbering them).
- added raw DV stdout (base filename = '-') mode
- updated AVI code from Kino 0.6.4.
- bugfix segfault on dv1394 buffer underrun
- bump version to 1.2
2003-02-06 Dan Dennedy <dan@dennedy.org>
- disable processing of jpeg options when not compile with libdv and jpeglib.
Changes in version 1.1b4 by Dan Dennedy
- added JPEG output with deinterlace and scaling
- bugfix an AVI write bug
- bugfix dv1394 capture on PAL
Changes in version 1.1b3 by Dan Dennedy
- pickup improved AVI classes from Kino.
- pickup FileHandler class from Kino to unify operation
and features across formats.
- raw format always creates consistent bytes-per-frame files
even if there is a dropped packet.
- detect libdv and use it for audio extraction and metadata
- detect libdv/dv1394.h to enable support for dv1394 (--dv1394)
- split on a max file size (--size)
- do not overwrite existing files.
- detect libquicktime and add quicktime file support (--format qt).
- change --index option to --opendml for dv2 format only.
dv1 always only contains large index.
dv2 contains only small index.
dv2+opendml contains both small and large index.
- verified compilation on gcc 3.2.
Changes in version 1.1b2
- more work on writing large files
Changes in version 1.1b1
- writes files larger than 1 GByte. Currently only
with --format dv1 files.
- lots of code refactoring
Changes in version 1.01
- PAL/NTSC detection improved
- minor changes to compile with g++ 3.0 (contributed by
Daniel Kobras)
- buffer space for frames doubled: now 100 frames instead
of 50 (about 3-4 secs, 16 MByte RAM total)
- bugfix: dvgrab will now reliably close the current
AVI file when aborted by ctrl-c (contributed by Glen
Nakamura)
Changes in version 1.0
- adapted to libraw 0.9
- packet assemble code modified - some camcorders send
only 492 bytes instead of 496
Changes in version 0.99
- fixed a bug that caused dvgrab to crash when grabbing very
big files in AVI Type 2 format and NTSC mode
- fixed the incorrect size of files in raw format (they always
had an extra 480 bytes)
- fixed exception thrown when writing a 0 frames file
- automake and debian files provided by Daniel Kobras
Changes in version 0.89:
- added the raw1394_stop_iso_rcv call in the close routines
Changes in version 0.88:
- support for 12 bit audio in AVI Type 2 files (courtesy
Mike Pieper)
Changes in version 0.87:
- new feature (courtesy Stephane Gourichon): there is now a
parameter that allows to save every n-th frame only. Great
for monitoring purposes or when you need a rough overview of
the contents of a tape.
- Type 2 audio has been slightly improved. Still no 12-bit
audio, but I'm getting close.
- refactoring and cleanup of the code.
- a few bug fixes: the --format raw mode now works again.
Changes in version 0.86:
- some improvements in the Type 2 AVI audio code. Many
camcorders send audio data which is not defined in my 314m
specification, which caused clicks and distortions, because
the audio data was left out.
If you have extensive audio error messages, your camcorder
is using an unsupported audio mode, such as 12 bit audio data.
- the --testmode parameter reads DV data from a testdata.raw
file created previously with the --format test parameter. No
camcorder is required.
Changes in version 0.85:
- handling of additional file formats:
--format raw
--format test
Changes in version 0.84:
- major rewrite. dvgrab now uses a separate thread for
handling the ieee1394 interface. This improves the behavior
under load conditions very much.
Changes in version 0.83:
- there is now audio support for --format dv2 AVIs.
Currently only 16 bit 48 kHz sound is supported.
Changes in version 0.82:
- incorrect audio speed value fixed, overflow error for long
Type 2 AVIs fixed.
- Added support for the --format raw data format.
This is just the raw DV data (120000 bytes for each NTSC
frame or 144000 bytes for each PAL frame) written to a
file. Can be used with the playdv program from the libdv
project.
Changes in version 0.81:
- fixed a bug that prevented Type 1 AVIs from playing with
some players.
Changes in version 0.8:
- the program can now write Type 1 and Type 2 DV AVI files.
The difference is that Type 1 contains only one data stream
which has audio and video data interleaved, whereas Type 2
AVIs contain an additional audio stream. Since the video
stream still has the audio data interleaved, this is some
waste of disk space, but MainActor can't read Type 1 files
so I had to add support for this other format too.
Note that this version currently writes empty audio tracks.
This means: no sound, but at least it loads nicely into
MainActor.
A free demo version of MainActor can be downloaded from:
http://www.mainconcept.com
- Because of the increasing number of supported file formats
I have changed the option for selecting them.
To write MainActor compatible AVI files use this command:
dvgrab --format dv2 outfile
Changes in version 0.7:
- the previous algorithm for assembling the data packets did
not work for some camcorders. I rewrote it and the new
algorithm explicitly calculates the address in the frame
buffer for each data packet.
- the program attempts to auto-detect NTSC and PAL format.
The --pal or --ntsc command line parameter is no longer
mandantory, but it will override the auto-detect feature if
applied. Use them if the auto-detect feature doesnt work
for you.
- The --timestamp parameter will put the date and time of the
recording into the AVI file name. If it doesnt do that,
dvgrab cant find any date and time related packages in the
DV data.
- I included the little utilities riffdump (prints out the
structure of an arbitrary AVI file) and rawdump (prints
out an ASCII dump of a file created with the --raw
option)
Changes in version 0.6:
- switched to C++ code. The reason is that C++ provides the
exception mechanism, which I use for a more reasonable
error reporting.
Also the whole concept of the RIFF/AVI file structure leads
to an object oriented approach.
- The program has now an auto-split function (see
dvgrab --help): It will start a new file whenever (1) the
file size approaches 2 GByte (exceeds 0x70000000 bytes, to
be specific), (2) the frame count is exceeded, or (3) the
recording of a new scene is detected. The program will loop
forever until you press CTRL-C. The current AVI file will be
properly closed, so you dont lose any data (at least this
is the plan).
- Closing the file is now reasonably fast.
- there is some visual feedback if the device driver drops
data.
Changes in version 0.5:
- implemented the extended AVI file format which allows for
files > 1 GByte. Note that Linux is currently still limited
to a maximum file size of 2 GByte, which corresponds to
approx. 14500 frames for PAL format or 17500 frames for
NTSC format.
- more comments in the source code
Changes in version 0.4:
- implemented the NTSC file format.
- there is now an error handler which intercepts the signals
1, 2, 3 and 15 and attempts to properly close the AVI
file. So you can safely press CTRL-C to stop capturing
without losing the data saved so far.
Changes in version 0.3:
- implemented the raw capturing mode, wich simply saves
the raw DV data to a file. Useful for analyzing the data.
- tested with files up to 2000 frames (288 MByte)
Changes in version 0.2:
- a basic set of command line options.
Run 'dvgrab --help' for a list.
- more error checking
- more comments
- tested with the latest ohci driver
(no changes were necessary though)
Changes in version 0.1:
- first version