PHPackages                             martin1982/live-broadcast-bundle - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. martin1982/live-broadcast-bundle

ActiveSymfony-bundle[Utility &amp; Helpers](/categories/utility)

martin1982/live-broadcast-bundle
================================

Bundle for live-streaming to various online networks

v7.0.5(3y ago)502.5k1MITPHP &gt;=8.0

Since May 30Compare

[ Source](https://github.com/Martin1982/live-broadcast-bundle)[ Packagist](https://packagist.org/packages/martin1982/live-broadcast-bundle)[ RSS](/packages/martin1982-live-broadcast-bundle/feed)WikiDiscussions Synced today

READMEChangelog (10)Dependencies (22)Versions (85)Used By (1)

Live Broadcast Bundle
=====================

[](#live-broadcast-bundle)

[![Build status](https://github.com/martin1982/live-broadcast-bundle/workflows/Static%20analysis%20of%20live-broadcast-bundle/badge.svg)](https://github.com/martin1982/live-broadcast-bundle/workflows/Static%20analysis%20of%20live-broadcast-bundle/badge.svg)[![Latest stable version](https://camo.githubusercontent.com/8d8bb562bcc6a575cc6d6e5717305b97aa36a66e0ea617aa96408a2a0e2c767c/68747470733a2f2f706f7365722e707567782e6f72672f6d617274696e313938322f6c6976652d62726f6164636173742d62756e646c652f762f737461626c65)](https://packagist.org/packages/martin1982/live-broadcast-bundle)

[![License](https://camo.githubusercontent.com/92de15d4c62dc7bdf824bab43a34ab372fa54fc3e48765d06ffb895c84f60b08/68747470733a2f2f706f7365722e707567782e6f72672f6d617274696e313938322f6c6976652d62726f6164636173742d62756e646c652f6c6963656e7365)](https://packagist.org/packages/martin1982/live-broadcast-bundle)[![Total downloads](https://camo.githubusercontent.com/521f76ca6b96e88d81fde28582be0b84abdf69f5b86900158ee6d441e329ee72/68747470733a2f2f706f7365722e707567782e6f72672f6d617274696e313938322f6c6976652d62726f6164636173742d62756e646c652f646f776e6c6f616473)](https://packagist.org/packages/martin1982/live-broadcast-bundle)

Table of contents
-----------------

[](#table-of-contents)

- [About](#about)
- [Prerequisites](#prerequisites)
- [Basic installation](#basic-installation)
- [Enabling Facebook Live](#enabling-facebook-live)
- [Enabling YouTube Live](#enabling-youtube-live)
- [Add new output platforms](#add-new-output-platforms)
- [Using an admin GUI](#using-an-admin-gui)

About
-----

[](#about)

The Live Broadcast Bundle will make it possible to plan live video streams to various websites/apps like Twitch, YouTube Live, Facebook Live.

You are able to stream from various inputs. This package supports files, URLs or existing RTMP streams.

For more info you can view the latest recorded presentation below, check the demo project at  or read on;

[![IMAGE ALT TEXT](https://camo.githubusercontent.com/0296f23c3f30650e10288aec90c187973434c1b84bf3b6688e95872017a49670/687474703a2f2f696d672e796f75747562652e636f6d2f76692f6178757458626c4172684d2f302e6a7067)](http://www.youtube.com/watch?v=axutXblArhM "High quality live broadcasting with PHP by @Martin1982 at @PHPamersfoort")

Prerequisites
-------------

[](#prerequisites)

To test these prerequisites the Symfony command `livebroadcaster:test:shell` can be used after the installation described below. If you like to check this manually the Broadcaster needs a few commands on an operating system;

All OS's:

- `ffmpeg 3.x or higher`

On Linux:

- `ps`
- `kill`

On Mac:

- `ps`
- `grep`
- `kill`

On Windows:

- `tasklist`
- `taskkill`

Basic installation
------------------

[](#basic-installation)

This bundle is available on Packagist. You can then install it using Composer:

```
$ composer require martin1982/live-broadcast-bundle
```

Use Doctrine to update your database schema with the broadcasting entities, when upgrading it is recommended to use migrations.

To start the broadcast scheduler you can run the following command:

```
$ php bin/console livebroadcaster:broadcast
```

To run the scheduler as a long-running process it's recommended to use the messenger middleware to keep the database connection alive as described at

### FFMpeg log directory

[](#ffmpeg-log-directory)

To view the output of FFMpeg you need to configure a log directory in your `config/packages/live_broadcast.yaml`.

```
 live_broadcast:
    ffmpeg:
        log_directory: '%kernel.logs_dir%'

```

### Event loop

[](#event-loop)

You can use this configuration to set the event loop timer:

```
live_broadcast:
    eventloop:
        timer: 5

```

### Thumbnailer setup

[](#thumbnailer-setup)

Set up the following config for thumbnails:

```
live_broadcast:
    thumbnail:
        upload_directory: '%kernel.project_dir%/public/uploads/thumbnails'
        web_path: '/uploads/thumbnails'

```

Enabling Facebook Live
----------------------

[](#enabling-facebook-live)

Create a Facebook app on  with the following permissions:

- user\_videos
- user\_events
- user\_managed\_groups
- manage\_pages
- publish\_actions
- Live-Video API

Edit your `config/packages/live_broadcast.yaml` with the following configuration:

```
live_broadcast:
    facebook:
        application_id: YourFacebookAppId
        application_secret: YourFacebookAppSecret

```

Enabling YouTube Live
---------------------

[](#enabling-youtube-live)

Login to  and enable the 'YouTube Data API v3'.

Add the YouTube API info to your config.yml:

```
live_broadcast:
    youtube:
        client_id: YourGoogleOauthClientId
        client_secret: YourGoogleOauthClientSecret

```

Add these lines to your parameters.yml (used for generating a thumbnail URL)

```
parameters:
    router.request_context.host: broadcast.com
    router.request_context.scheme: https

```

Add new output platforms
------------------------

[](#add-new-output-platforms)

Create a new Channel Entity in Entity/Channel that extends the AbstractChannel (e.g. ChannelNew)

Create a new StreamOutput service in Service/StreamOutput that implements the OutputInterface (e.g. OutputNew)

Configure the service with the output tag in config/services.yml

```
live.broadcast.output.new:
    class: Martin1982\LiveBroadcastBundle\Service\StreamOutput\OutputNew
    tags:
        - { name: live.broadcast.output, platform: 'New' }

```

Using an admin GUI
------------------

[](#using-an-admin-gui)

This bundle comes without a web frontend interface, to make use of an admin package you can pick the one to your liking;

- Sonata Admin:
- Easyadmin:

Sponsors
========

[](#sponsors)

- [Jetbrains](https://jb.gg/OpenSource)

###  Health Score

40

—

FairBetter than 86% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity26

Limited adoption so far

Community14

Small or concentrated contributor base

Maturity84

Battle-tested with a long release history

 Bus Factor1

Top contributor holds 91.6% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~30 days

Total

84

Last Release

1131d ago

Major Versions

v2.1.3 → v3.0.02020-06-22

v3.1.2 → v4.0.02020-08-04

v4.1.1 → v5.0.02021-02-08

v5.1.1 → v6.0.02022-03-03

v6.0.0 → v7.0.02023-01-18

PHP version history (6 changes)v0.5.10PHP &gt;=5.6

v0.6.0PHP &gt;=7.1

v2.0.0PHP &gt;=7.2

v4.1.1PHP &gt;=7.2|&gt;=8.0

v5.0.0PHP &gt;=7.4|&gt;=8.0

v7.0.0PHP &gt;=8.0

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/6999565?v=4)[Paul](/maintainers/PouleR)[@PouleR](https://github.com/PouleR)

![](https://www.gravatar.com/avatar/159f8a8c2464c072af98424168596d4fa5b303356afbdff906e91b6ec744dc00?d=identicon)[Martin1982](/maintainers/Martin1982)

---

Top Contributors

[![Martin1982](https://avatars.githubusercontent.com/u/408395?v=4)](https://github.com/Martin1982 "Martin1982 (219 commits)")[![PouleR](https://avatars.githubusercontent.com/u/6999565?v=4)](https://github.com/PouleR "PouleR (12 commits)")[![paulradt](https://avatars.githubusercontent.com/u/72257640?v=4)](https://github.com/paulradt "paulradt (6 commits)")[![jeroenvdgulik](https://avatars.githubusercontent.com/u/242090?v=4)](https://github.com/jeroenvdgulik "jeroenvdgulik (2 commits)")

###  Code Quality

TestsPHPUnit

Code StylePHP CS Fixer

### Embed Badge

![Health badge](/badges/martin1982-live-broadcast-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/martin1982-live-broadcast-bundle/health.svg)](https://phpackages.com/packages/martin1982-live-broadcast-bundle)
```

###  Alternatives

[rcsofttech/audit-trail-bundle

Enterprise-grade, high-performance Symfony audit trail bundle. Automatically track Doctrine entity changes with split-phase architecture, multiple transports (HTTP, Queue, Doctrine), and sensitive data masking.

1175.2k](/packages/rcsofttech-audit-trail-bundle)[sulu/sulu

Core framework that implements the functionality of the Sulu content management system

1.3k1.4M196](/packages/sulu-sulu)[sylius/sylius

E-Commerce platform for PHP, based on Symfony framework.

8.5k5.8M717](/packages/sylius-sylius)[easycorp/easyadmin-bundle

Admin generator for Symfony applications

4.3k17.5M378](/packages/easycorp-easyadmin-bundle)[open-dxp/opendxp

Content &amp; Product Management Framework (CMS/PIM)

9417.2k58](/packages/open-dxp-opendxp)[kimai/kimai

Kimai - Time Tracking

4.8k8.7k1](/packages/kimai-kimai)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
