Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • gst-libav gst-libav
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 69
    • Issues 69
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 3
    • Merge requests 3
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • GStreamerGStreamer
  • gst-libavgst-libav
  • Issues
  • #38
Closed
Open
Issue created May 12, 2018 by Bugzilla Migration User@bugzilla-migration

avviddec: Support draining for some decoders

Submitted by Yeongjin Jeong

Link to original bug (#796042)

Description

Created attachment 371951
avviddec: Support draining for some decoders

Some decoders (those marked with AV_CODEC_CAP_DELAY) have a delay between input and output.

It means that for some packets they will not immediately produce decoded output and need to be flushed at the end of decoding to get all the decoded data.

However, even if AV_CODEC_CAP_DELAY is not set, there are decoders that need to be flushed if they work on multi-threads.

I experienced that the frame is not drained when I using the ffmpeg native PNG decoder.

e.g.
gst-launch-1.0 filesrc location="png file location" ! pngparse ! avdec_png ! autovideoconvert

gst-play-1.0 "png file location"

Note.)
If you use ffmpeg native PNG decoder and set the thread_count to 1 in codecCtx, decoding will be done without draining. So you must be set thread_count more than 1 to test.

Patch 371951, "avviddec: Support draining for some decoders":
0001-avviddec-Support-draining-for-some-decoders.patch

Version: 1.14.0

Assignee
Assign to
Time tracking