ShellRecorder: improve the default pipeline
The default pipeline was fairly aggressive about quality, and could be too expensive for some computers. Decrease the quality setting for the vp8 codec from 10 to 8, and increase the speed setting from 2 to 6. (Basically, quality affects the visual fidelity of the end result, while speed affects how much CPU the encoder uses to get a high compression ratio at that quality level.) Remove videorate from the pipeline, since the GStreamer VP8 encoder can handle variable-framerate streams. This means that we won't spend CPU encoding duplicate frames added by videorate. https://bugzilla.gnome.org/show_bug.cgi?id=669066
This commit is contained in:
parent
025784fd83
commit
d4a26fbf4b
@ -127,7 +127,7 @@
|
||||
take care of its own output - this might be used to send the output
|
||||
to an icecast server via shout2send or similar. When unset or set
|
||||
to an empty value, the default pipeline will be used. This is currently
|
||||
'videorate ! vp8enc quality=10 speed=2 threads=%T ! queue ! webmmux'
|
||||
'vp8enc quality=8 speed=6 threads=%T ! queue ! webmmux'
|
||||
and records to WEBM using the VP8 codec. %T is used as a placeholder
|
||||
for a guess at the optimal thread count on the system.
|
||||
</_description>
|
||||
|
@ -148,7 +148,7 @@ G_DEFINE_TYPE(ShellRecorder, shell_recorder, G_TYPE_OBJECT);
|
||||
* (Theora does have some support for frames at non-uniform times, but
|
||||
* things seem to break down if there are large gaps.)
|
||||
*/
|
||||
#define DEFAULT_PIPELINE "videorate ! vp8enc quality=10 speed=2 threads=%T ! queue ! webmmux"
|
||||
#define DEFAULT_PIPELINE "vp8enc quality=8 speed=6 threads=%T ! queue ! webmmux"
|
||||
|
||||
/* The default filename pattern. Example shell-20090311b-2.webm
|
||||
*/
|
||||
@ -1623,7 +1623,7 @@ shell_recorder_set_filename (ShellRecorder *recorder,
|
||||
* might be used to send the output to an icecast server
|
||||
* via shout2send or similar.
|
||||
*
|
||||
* The default value is 'videorate ! theoraenc ! oggmux'
|
||||
* The default value is 'vp8enc quality=8 speed=6 threads=%T ! queue ! webmmux'
|
||||
*/
|
||||
void
|
||||
shell_recorder_set_pipeline (ShellRecorder *recorder,
|
||||
|
Loading…
Reference in New Issue
Block a user