VTK
vtkFFMPEGWriter.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkFFMPEGWriter.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
35 #ifndef vtkFFMPEGWriter_h
36 #define vtkFFMPEGWriter_h
37 
38 #include "vtkIOFFMPEGModule.h" // For export macro
39 #include "vtkGenericMovieWriter.h"
40 
41 class vtkFFMPEGWriterInternal;
42 
43 class VTKIOFFMPEG_EXPORT vtkFFMPEGWriter : public vtkGenericMovieWriter
44 {
45 public:
46  static vtkFFMPEGWriter *New();
48  void PrintSelf(ostream& os, vtkIndent indent);
49 
51 
55  void Start();
56  void Write();
57  void End();
59 
61 
66  vtkSetClampMacro(Quality, int, 0, 2);
67  vtkGetMacro(Quality, int);
69 
71 
75  vtkSetMacro(Compression, bool);
76  vtkGetMacro(Compression, bool);
77  vtkBooleanMacro(Compression, bool);
79 
81 
84  vtkSetClampMacro(Rate, int , 1, 5000);
85  vtkGetMacro(Rate, int);
87 
89 
92  vtkSetMacro(BitRate, int);
93  vtkGetMacro(BitRate, int);
95 
97 
100  vtkSetMacro(BitRateTolerance, int);
101  vtkGetMacro(BitRateTolerance, int);
103 
104 protected:
105  vtkFFMPEGWriter();
106  ~vtkFFMPEGWriter();
107 
108  vtkFFMPEGWriterInternal *Internals;
109 
111  int Quality;
112  int Rate;
113  int BitRate;
116 
117 private:
118  vtkFFMPEGWriter(const vtkFFMPEGWriter&) = delete;
119  void operator=(const vtkFFMPEGWriter&) = delete;
120 };
121 
122 #endif
virtual void Write()=0
These methods start writing an Movie file, write a frame to the file and then end the writing process...
virtual void Start()=0
These methods start writing an Movie file, write a frame to the file and then end the writing process...
virtual void End()=0
These methods start writing an Movie file, write a frame to the file and then end the writing process...
Uses the FFMPEG library to write video files.
a simple class to control print indentation
Definition: vtkIndent.h:39
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
an abstract movie writer class.
static vtkAlgorithm * New()
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
vtkFFMPEGWriterInternal * Internals