After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 708036 - x264enc: Update documentation to specify default profile if no constraints are given
x264enc: Update documentation to specify default profile if no constraints ar...
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-ugly
unspecified
Other All
: Normal normal
: 1.2.0
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2013-09-13 15:44 UTC by Andoni Morales
Modified: 2013-09-24 08:48 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
x264enc: really use 'main' as the default profile (962 bytes, patch)
2013-09-13 15:44 UTC, Andoni Morales
needs-work Details | Review
x264enc: Update the documentation to match the default profile used (1.08 KB, patch)
2013-09-18 09:36 UTC, Andoni Morales
committed Details | Review

Description Andoni Morales 2013-09-13 15:44:09 UTC
When downstream does not set the profile field in the caps
the first element in the profiles arrays is used. Since we
want to default to 'main', it should be first in the list
Comment 1 Andoni Morales 2013-09-13 15:44:12 UTC
Created attachment 254869 [details] [review]
x264enc: really use 'main' as the default profile
Comment 2 Sebastian Dröge (slomo) 2013-09-16 08:38:10 UTC
Should it? I'd say that baseline should be the default as it should be supported by any h264 implementation. Also the order of the other profiles there is a bit weird, would be good to reorder that :)
Comment 3 Andoni Morales 2013-09-16 10:36:23 UTC
I'd use baseline as default too, I was only trying to match the documentation :)
http://cgit.freedesktop.org/gstreamer/gst-plugins-ugly/tree/ext/x264/gstx264enc.c#n40
Comment 4 Sebastian Dröge (slomo) 2013-09-16 13:16:44 UTC
I see, there are arguments for both I guess. With main as default you might in theory get better quality/compression-efficiency by default. Not sure what would be best here
Comment 5 Olivier Crête 2013-09-16 17:26:43 UTC
The reason I put the highest first is that if you support high & main & baseline, you probably want the highest one first ? Otherwise you should restrict your downstream caps.
Comment 6 Andoni Morales 2013-09-18 09:36:04 UTC
Created attachment 255157 [details] [review]
x264enc: Update the documentation to match the default profile used
Comment 7 Andoni Morales 2013-09-18 09:36:25 UTC
That makes sense, use the best possible quality unless you have restrictions. By default libx264 does not set any restriction:

---------------
profile

Default: not set

Limit the profile of the output stream. If you specify a profile, it overrides all other settings, so if you use it, you will be guaranteed a compatible stream. If you set this option, you cannot use lossless encoding (--qp 0 or --crf 0).

You should set this if you know your playback device only supports a certain profile. Most decoders support High profile, so there's no need to set this.

Values available: baseline, main, high, high10, high422, high444. 
----------------
Comment 8 Andoni Morales 2013-09-18 09:39:45 UTC
That makes me think that their should be a value in the profile options when no restrictions applies at all (like for lossless encoding as described in the documentation)
Comment 9 Sebastian Dröge (slomo) 2013-09-24 08:48:05 UTC
commit 03a98eabce3b9f6f9e3111418d0c297522834d68
Author: Andoni Morales Alastruey <ylatuya@gmail.com>
Date:   Wed Sep 18 11:34:56 2013 +0200

    x264enc: Update the documentation to match the default profile used
    
    https://bugzilla.gnome.org/show_bug.cgi?id=708036