theoraenc bitrate problems (with and without GES)
amindfv at mailbox.org
amindfv at mailbox.org
Wed Apr 5 09:06:43 UTC 2023
Another data point: this bug(?) does not occur when I use x264enc and an mp4 container.
Tom
On Mon, Apr 03, 2023 at 01:11:25AM -0700, amindfv--- via gstreamer-devel wrote:
> I'm using GES to create a video with an ogg container and a theora video stream. I find that setting a bitrate value for the theora stream results in a consistently low video quality.
>
> I set the bitrate like so:
>
> GstPreset *preset;
> preset = GST_PRESET (gst_element_factory_make ("theoraenc", "theorapreset"));
> g_object_set (preset, "bitrate", 400000, NULL);
> gst_preset_save_preset (preset, "this_is_a_test");
>
> And sure enough, in .local/share/gstreamer-1.0/presets/GstTheoraEnc.prs I see:
>
> [this_is_a_test]
> name=theorapreset
> parent="NULL"
> qos=false
> min-force-key-unit-interval=0
> bitrate=400000
>
> etc.
>
> Regardless of what I set this bitrate value to, however, the bitrate of the output file hovers around 390 kb/s. Before I had set a bitrate value at all, the bitrate of the output file was 1874 kb/s, and visibly much higher quality.
>
> Part of this problem, I assume, is that "bitrate" and "quality" are mutually exclusive settings, so when "bitrate" isn't set the quality default (=48) roughly corresponds to the 1874 kb/s bitrate? But then why does the bitrate setting seem to be totally ignored when it's set?
>
> I've tested without GES and encoding profiles, simply with a one-liner. For example:
>
> gst-launch-1.0 videotestsrc ! video/x-raw,width=1280,height=720 ! theoraenc bitrate=4000000 ! oggmux ! filesink location=/tmp/foo.ogg
>
> This doesn't result in consistent ~390 kb/s like with GES, but it also doesn't result in the requested bitrate.
>
> What's going on?
>
> Any help with this would be very appreciated!
>
> Thanks,
> Tom
More information about the gstreamer-devel
mailing list