Streamnik Sunucu proje açık codec Ogg / Vorbis ve Ogg / Theora dayalı bir IPTV sunucusudur. Farklı kanallardan bir dizi akarsu ve kiralanan (sanal) sunucuları üzerinde çalıştırmak için optimize edilmiştir. Program takvimi, bir SQL veritabanı tablosu ile tanımlanır ve zamanında değiştirilebilir.
Gereksinimler:
Devel ile · Ortak C ++
· Mysql (mysqlclient)
Kurulum:
Derlemek için, her şey her zamanki gibi çalışır:
./configure
yapmak
sudo make install
Sunucuyu başlatmak için gerekenler:
shorties: hata işleme için kısa filmler
önizleme: Kısa önizleme filmleri (örneğin reklamlar - Bu dere ... tarafından sunulan)
Video: Video göstermek için
tüm videolar, ufaklıklar ve prieviews, Framerate eşleşmelidir
kare mesafe vb
shorties ve önizleme aslında bir anahtar adı ile önbelleğe alınır ve derlenen
(bir sonraki sürümü bunun için bir veritabanı girişi kullanabilir)
Başlamak:
sadece sunucuyu başlatmak:
> StreamnikServer -d -u -p
ve mesela sunucuya erişim mplayer ile:
> Mplayer "http: // localhost: 12000 / video.ogg kanalı = 1?"
Ancak, tüm befor, ek şeylerin bir dizi ayarlamanız gerekir:
VERİ TABANI:
Bir sql veritabanı ve çalışan gerekiyor. Tablolar bu belgenin sonunda gösterilmektedir.
Veritabanı adı ve parola komut satırında eklenebilir.
DOSYALAR:
Siz (serverConfig.h değiştirilebilir) Aşağıdaki dosya yapısı gerekir:
ev
> Paylaştı
> Ogg
> Bücür
ogg dizini akış gereken tüm dosyaları taşır. Her dosya sql veritabanı ("videolar" tablosunda) karşılık gelen bir girişi vardır.
shorties bir hata gösterilir küçük ogg dosyalarıdır.
shorty_1.ogg - Mevcut> hiçbir akış
shorty_2.ogg -> yetkisiz erişim
shorty_3.ogg -> akış zaman aşımı
shorty_4.ogg -> veritabanı mevcut değil
(Ekler için örneğin orijinal akışı befor kısa filmler,) Sonra önizleme ekleyebilirsiniz
Bu dosya da hatun dizine yerleştirilmesi gerekir ve adlandırılır
önizleme _ *. ogg.
Sistem bunlar mevcut değilse mutlu olmaz, ama başlayacaktır
KANALLAR:
Kanallar SQL veritabanında bir girdi ile açılır. Bu yazı aslında başlangıçta mevcut olmalıdır.
Her bir kanal için, a StreamCreator nesnesi bir çoklayıcıya 's verilerini gönderir olan oluşturulacaktır. Bu daha sonra tüm istemci isteklerini idare edecektir.
TCPListener (Port 12000) StreamSend (Müşteri 1)
| | /
Dosya -> StreamCreator -> Çoklayıcı ---> StreamSend (Müşteri 2)
Akış 1 |
| -> StreamSend (Müşteri 3)
|
SQL veritabanı erişimi |
^ | -> StreamSend (Müşteri 4)
| | /
Dosya -> StreamCreator -> Çoklayıcı ---> StreamSend (Müşteri 5)
Akış 2 |
|
|
SQL veritabanı erişimi |
^ | ---> StreamSend (Müşteri 6)
| | /
Dosya -> StreamCreator -> Çoklayıcı ----> StreamSend (Müşteri 7)
Akış 3
-> StreamSend (Müşteri 8)
-> StreamSend (Müşteri 9)
...
PROGRAM:
zamanlama veritabanında "zamanlama" tabloya yerleştirilir.
("Day_id" ve "tarih" kullanımda aslında değildir)
channel_id ve video_id diğer tablolardaki girdileri karşılık gelmektedir.
Her filmin (günde) bir konuma sahiptir. Bir gün 04:00 başlar.
filmlerinden biri blok içinde ilk giriş durumu "1" ile işaretlenmiş olmalıdır.
Eğer sürekli bağlı olmayan bir film varsa, eklemek gerekir
Yine "1" durumu.
************************************************** ****
*
* SQL veritabanı oluşturma
*
************************************************** ****
(MASA `schedule` CREATE
`Day_id` int (11) imzasız NOT NULL default '0',
`Date` varchar (8) NOT NULL default ''
`Channel_id` int (11) imzasız NOT NULL default '0',
`Position` int (10) imzasız NOT NULL default '0',
`Video_id` int (10) imzasız NOT NULL default '0',
`Duration` int (10) imzasız NOT NULL default '0',
`Status` tinyint (3) imzasız NOT NULL default '0'
)
(MASA `videos` CREATE
`Id` int (10) imzasız NOT NULL auto_increment,
`NOT NULL default '0' unsigned int (10) owner`,
`Başlık ile` varchar (80) NOT NULL default ''
`Subtitle` varchar (80) NOT NULL default ''
`Author` varchar (80) NOT NULL default ''
`Copyright` varchar (160) NOT NULL default ''
`Description` varchar (255) NOT NULL default ''
`Time_added` int (10) imzasız NOT NULL default '0',
`Duration` int (10) imzasız NOT NULL default '0',
`Ready` tinyint (1) NOT NULL default '0',
PRIMARY KEY (`id`)
)
(MASA `channels` CREATE
`Id` int (11) imzasız NOT NULL default '0',
`Name` varchar (80) NOT NULL default ''
`Owner` int (11) NOT NULL default '0',
`Description` varchar (80) NOT NULL default ''
`Randomplay` tinyint (1) NOT NULL default '0',
PRIMARY KEY (`id`)
)
Bu Sürümdeki Yenilikler:
· Bu sürüm sunucu kurmak için yeni belgelerin bir sürü sağlar.
· Bir kurulum, derlemek hangi mevcut komut ve kurulum tek bir adımda streamnik sunucusu artık yoktur.
· Yapılandırma şimdi /etc/streamnik.conf yerleştirilen bir yapılandırma dosyası tarafından yapılabilir.
· Ayrıca, farklı Linux dağıtımları altında derlemek için bu tür düzeltmeler gibi bazı küçük onarımları vardır.
Yazılım detaylar:
Yorum Bulunamadı