libxvidcore calculate number of threads basing on video height.
If height is small enough it allocates 0 bytes long memory and
writes to it.
Setting thread_count to 0 uses 1 thread and skips bugged code.
Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This prevents the situation when user set option to 0 and ffserver
threats it as not set value, so applies the default.
Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
Options are already set to its defaults by AVOption API.
The only difference is for qmin, new default is 2, ffserver set to 3.
It is dead code because if condition is not meet unless user set option to 0.
Meeting condition would mean that ffserver overwrites explicity set option.
Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
So far ffmpeg used recommended configuration only for codec priv options.
ffmpeg will use now codec defaults and then apply recommended configuration
for all options. Recommended configuration possibly contains minimal
set of options to filful user configuration.
Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
ffmenc will store recommended encoder configuration if present.
This will allow the user to base on local defaults and
apply only explicitly set options.
If recommended encoder configuration is not present, then
non-default context's options are stored.
Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
ffserver_save_avoption() and ffserver_opt_preset() have
redundant arguments. They can be obtained basing on media type.
This simplifies uses and reduce chance for a mistake.
Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
This is a generic solution that will not reqiore modifications when new options are added.
This also fixes problem with current implementation when qmin or qmax=-1.
Only 8 bits was sent and read back as 255.
Fixes#1275Fixes#1461
Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
This commit allows to set codec's private option.
As side effect, it also improves preset support.
Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
Function allows to create string containing object's serialized options.
Such string may be passed back to av_set_options_string() in order to restore options.
Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
timecode_frame_start is set to -1 in avcodec_get_context_defaults3()
AVOptions API complains about it.
Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
In general this commit prepares opt tests to be added to fate.
The commit set some non-zero defaults for test options.
It allows to check if defaults are really set.
Added printing of default values.
Added more cases for testing av_set_options_string
Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
Such strong requirement constraint doesn't allow to use 360p.
Changed to warning when video size is not being multiple of 2.
Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
new_output_stream creates a codec context with arbitraty picked codec.
Later data is updated, but priv_data are left alone.
There is a bit chance there is a mismatch between codecs.
Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
AVOption are checked right after found in config file.
It allows to report exact line in config file.
Options provided more than once are threated as errors.
It also fixes flag options handing.
Flags may occur more than once in config file.
Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
Replace atoi with more advanced parsing routine.
Set maximum port value to 65535 (not 65536).
Other checks.
Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
So far AVCodecContext was created without codec specified.
This causes internal data to not be initialized to defaults.
This commit postpone context creation until all information is gathered.
Partially fixes#1275
This commit doesn't change any existing logic.
It moves ffserver configuration related code to separate file.
It intends to make maintaining easier.
Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
PulseAudio expilitly requires name of the source.
This patch makes it use default source when not provided.
It simplifies programistic use.
Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
pulse-simple is additional library built on top of PulseAudio.
It causes ffmpeg to link to library which is not needed anymore.
This commit removes that redundant dependency.
Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This variable is used only inside one function.
There is no need to store it in context.
This also may prevent crush by double free frame.
Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
According to doc, ssh_userauth_none must be called before ssh_userauth_list.
It solves login issue for new versions of libssh.
Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Most FTP servers enable UTF-8 by default, but it is not required by the standard.
Enabling it manually makes ffmpeg implementation more consistent when server
doesn't enable it by default.
Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
User may close X11 window by close button on tray.
FFmpeg leaves in graceless way.
This commit detects it and return EPIPE error.
Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
FFmpeg mix devices and file formats when -formats option is used.
This commit adds a -devices param to list devices only.
Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>