Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
pipewire
pipewire
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 225
    • Issues 225
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge Requests 4
    • Merge Requests 4
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • CI/CD
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • PipeWire
  • pipewirepipewire
  • Issues
  • #750

Closed
Open
Created Feb 17, 2021 by Wellington Wallace Miguel Melo@wwmm

gstpipewirepool: can't change flushing state of inactive pool

I am coming here again because of a hardware dependent issue that has been really hard to fix. There is a long discussion in this link https://github.com/wwmm/pulseeffects/issues/898. Long story short in some systems PulseEffects GStreamer pipeline is randomly freezing when trying to enter in the playback state. That happens in my laptop while I have no issues at all in my desktop. I have been looking at GStreamer logs trying to find what could be the difference in these systems and so far there is only one thing that I see in the systems affected by random freezes that I do not see in my desktop:

gstbufferpool.c:1409:gst_buffer_poll_set_flushing:<pipewirepool1> can't change flushing state of inactive pool

These messages are shown when the pipeline is stopped. Not when the freezes happen. But it is strange that they are not present in the system where everything is fine.

When things work pipewiresink logs show lines with both on_process: signal calls and gst_pipewire_sink_render: push buffer calls. But once the pipeline freezes trying to get to the playback state only the on_process: signal lines are printed in pipewiresink logs.

It seems to me that in the affected systems gst_pipewire_sink_render is randomly not getting data from PipeWire. And as there is no buffer the pipeline does not finish its move to the playback state. What causes the freezing.

Edited Feb 17, 2021 by Wellington Wallace Miguel Melo
Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
None
Due date
None