File indexing completed on 2024-05-05 05:30:18
0001 /* 0002 SPDX-FileCopyrightText: 2023 Aleix Pol Gonzalez <aleixpol@kde.org> 0003 0004 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 0005 */ 0006 0007 #pragma once 0008 0009 #include "pipewireproduce_p.h" 0010 0011 class PipeWireEncodeProduce : public PipeWireProduce 0012 { 0013 Q_OBJECT 0014 public: 0015 PipeWireEncodeProduce(PipeWireBaseEncodedStream::Encoder encoder, uint nodeId, uint fd, const Fraction &framerate, PipeWireEncodedStream *stream); 0016 0017 void processPacket(AVPacket *packet) override; 0018 void processFrame(const PipeWireFrame &frame) override; 0019 0020 Q_SIGNALS: 0021 void newPacket(const PipeWireEncodedStream::Packet &packetData); 0022 0023 private: 0024 PipeWireEncodedStream *const m_encodedStream; 0025 QSize m_size; 0026 PipeWireCursor m_cursor; 0027 };