[Bug 744191] New: encodebin: need more buffers in output queue for better performance
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Sun Feb 8 23:58:47 PST 2015
https://bugzilla.gnome.org/show_bug.cgi?id=744191
GStreamer | gst-plugins-base | 1.4.1
Summary: encodebin: need more buffers in output queue for
better performance
Classification: Platform
Product: GStreamer
Version: 1.4.1
OS/Version: Linux
Status: UNCONFIRMED
Severity: normal
Priority: Normal
Component: gst-plugins-base
AssignedTo: gstreamer-bugs at lists.freedesktop.org
ReportedBy: kevinbing.song at gmail.com
QAContact: gstreamer-bugs at lists.freedesktop.org
GNOME version: ---
Issue:
The camera application which based on camerabin performance is bad. The
recorded file only has 16 fps. Our expect is 30 fps. Recorder can reach 29.9
fps after changed encodebin output queue buffer count to 50.
Root cause:
encodebin have two queue, one for video encoder input buffer, the other used
for video encoder output buffer. The input buffer can buffer more data when
video encoder performance is bad.
The output queue set max buffers to one. Our video encoder is based on
hardware, the video encoder performance is ok for 1080p at 30fps. Video encoder
use video buffer pool with video source, the video buffer pool has limited max
buffers, so the input buffer can't buffer too much video frame buffers.
The root cause of the issue seems the file sink will cost long time when the
cached file sync to external storage.
Solution:
1. Change the output queue setting. Maybe same with input queue.
2. Add one queue between muxer and filesink. The queue should buffer many
buffers to remove the storage effect.
What's you option. I can upload after we have decision.
--
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the gstreamer-bugs
mailing list