Streamnik সার্ভার প্রকল্পের ওপেন কোডেক অগ / Vorbis এবং অগ / জন্য Theora উপর ভিত্তি করে একটি IPTV সার্ভার. এটি বিভিন্ন চ্যানেলের সংখ্যা স্ট্রিম করতে পারেন এবং লিজড (ভার্চুয়াল) সার্ভার চালানো অপ্টিমাইজ করা হয়. প্রোগ্রাম সিডিউল একটি SQL ডাটাবেস টেবিল দ্বারা সংজ্ঞায়িত করা হয় এবং রানটাইম পরিবর্তন করা যাবে.
আবশ্যক:
Devel সঙ্গে · প্রচলিত সি ++
· মাইএসকিউএল (mysqlclient)
ইনস্টলেশন:
কম্পাইল, সবকিছু স্বাভাবিক হিসাবে কাজ করে:
./configure
করা
উবুন্টু ইনস্টল করতে
আপনি সার্ভার আরম্ভ করার জন্য যা প্রয়োজন:
Shorties: ত্রুটি পরিচালনার ব্যবস্থা জন্য ছোট ছায়াছবি
প্রিভিউ: সংক্ষিপ্ত প্রাকদর্শন ছায়াছবি (যেমন বিজ্ঞাপন - এই স্ট্রিম ... দ্বারা প্রস্তুত করা হয়)
ভিডিও: ভিডিও দেখা
সব ভিডিও, Shorties এবং prieviews, ফ্রেমরেট মধ্যে সুসংগত হওয়া আবশ্যক
keyframe ডিসটেন্স ইত্যাদি
Shorties এবং প্রাকদর্শনের আসলে একটি কি 'র নাম সঙ্গে ক্যাশে এবং কম্পাইল করা হয়
(পরবর্তী সংস্করণ যে জন্য একটি ডাটাবেস ভুক্তি ব্যবহার করতে পারে)
প্রারম্ভ:
শুধু সার্ভার আরম্ভ:
> StreamnikServer -d -u -p
এবং যেমন সার্ভার অ্যাক্সেস Mplayer দ্বারা:
> Mplayer "http: // localhost: 12000 / video.ogg চ্যানেল = 1?"
যাইহোক, যে সব befor, আপনি অতিরিক্ত জিনিস সংখ্যা সেট আপ করার প্রয়োজন:
ডাটাবেস:
আপনি একটি SQL ডাটাবেস আপ এবং চলমান প্রয়োজন. বিবৃতি এই ডকুমেন্টের শেষে দেখানো হয়.
ডেটাবেস নাম এবং পাসওয়ার্ড কমান্ড লাইনে যোগ করা যেতে পারে.
ফাইল:
আপনি (serverConfig.h পরিবর্তন করা যাবে) নিম্নলিখিত ফাইলের গঠন প্রয়োজন:
বাড়ি
> ভাগ
> OGG
> Shorty
OGG ডিরেক্টরি স্ট্রিম করা উচিত যে সব ফাইল, বহন করে. প্রতিটি ফাইল SQL ডাটাবেস ("ভিডিও" টেবিল) একটি অনুরূপ এন্ট্রি আছে.
Shorties একটি ত্রুটি দেখানো হয় যা ছোট OGG ফাইল.
shorty_1.ogg - উপলব্ধ> কোন প্রবাহ
shorty_2.ogg -> অননুমোদিত এক্সেস
shorty_3.ogg -> স্ট্রিমিং সময়সীমার
shorty_4.ogg -> ডাটাবেস পাওয়া যায় না
(যোগ জন্য যেমন মূল প্রবাহ befor ছোট ছায়াছবি,) তারপর আপনি প্রাকদর্শনের যোগ করতে পারেন
এই ফাইলটি পাশাপাশি Shorty ডিরেক্টরির মধ্যে স্থাপন করা আবশ্যক এবং নামকরণ করা হয়
সম্পূর্ণ বিবরণের পূর্বরূপ দেখুন _ *. OGG.
সিস্টেম তারা উপস্থিত না থাকলে খুশি হবেন না, কিন্তু আরম্ভ করা হবে
চ্যানেল:
চ্যানেল SQL ডাটাবেস একটি এন্ট্রি দ্বারা খোলা হয়. এই এন্ট্রি পোস্ট করা আসলে প্রারম্ভকালে উপস্থিত থাকা আবশ্যক.
প্রতি চ্যানেলের জন্য একটি StreamCreator বস্তুর একটি multiplexer এটি এর তথ্য পাঠাতে হবে, যা, তৈরি করা হবে. এই তারপর সব ক্লায়েন্ট রিকোয়েস্ট হ্যান্ডেল করা হবে.
TcpListener (পোর্ট 12000) StreamSend (ক্লায়েন্ট 1)
| | /
ফাইল -> StreamCreator -> Multiplexer ---> StreamSend (ক্লায়েন্ট 2)
বিশেষ প্রতিবেদন 1 |
| -> StreamSend (ক্লায়েন্ট 3)
|
SQL ডাটাবেস অ্যাক্সেস |
^ | -> StreamSend (ক্লায়েন্ট 4)
| | /
ফাইল -> StreamCreator -> Multiplexer ---> StreamSend (ক্লায়েন্ট 5)
বিশেষ প্রতিবেদন 2 |
|
|
SQL ডাটাবেস অ্যাক্সেস |
^ | ---> StreamSend (ক্লায়েন্ট 6)
| | /
ফাইল -> StreamCreator -> Multiplexer ----> StreamSend (ক্লায়েন্ট 7)
বিশেষ প্রতিবেদন 3
-> StreamSend (ক্লায়েন্ট 8)
-> StreamSend (ক্লায়েন্ট 9)
...
সূচি:
সময়সূচী ডাটাবেসের মধ্যে "তফসিল" টেবিলের মধ্যে স্থাপন করা হয়.
("Day_id" এবং "জন্ম" ব্যবহার আসলে না হয়)
channel_id এবং VIDEO_ID অন্যান্য টেবিলের মধ্যে থেকে মিলা.
প্রত্যেক ফিল্ম (একটি দিন) একটি অবস্থান আছে. একদিন 4:00 আরম্ভ করা হয়.
ছায়াছবি এক ব্লক মধ্যে প্রথম এন্ট্রি অবস্থা "1" দিয়ে চিহ্নিত করা উচিত.
আপনি অবিরত সংযুক্ত করা হয় না, যা একটি ফিল্ম, থাকে, তাহলে আপনি যোগ করা উচিত
আবার "1" অবস্থা.
************************************************** ****
*
* SQL ডাটাবেস সৃষ্টি
*
************************************************** ****
(টেবিল `schedule` তৈরি
`Day_id` কোন int (11) স্বাক্ষরবিহীন না শূন্য ডিফল্ট '0',
`Date` VarChar (8) না শূন্য ডিফল্ট '',
`Channel_id` কোন int (11) স্বাক্ষরবিহীন না শূন্য ডিফল্ট '0',
`Position` কোন int (10) স্বাক্ষরবিহীন না শূন্য ডিফল্ট '0',
`Video_id` কোন int (10) স্বাক্ষরবিহীন না শূন্য ডিফল্ট '0',
`Duration` কোন int (10) স্বাক্ষরবিহীন না শূন্য ডিফল্ট '0',
`Status` tinyint (3) স্বাক্ষরবিহীন না শূন্য ডিফল্ট '0'
)
(টেবিল `videos` তৈরি
`Id` কোন int (10) স্বাক্ষরবিহীন না শূন্য AUTO_INCREMENT,
`না শূন্য ডিফল্ট '0' স্বাক্ষরবিহীন int (10) owner`,
`Title` VarChar (80) না শূন্য ডিফল্ট '',
`Subtitle` VarChar (80) না শূন্য ডিফল্ট '',
`Author` VarChar (80) না শূন্য ডিফল্ট '',
`Copyright` VarChar (160) না শূন্য ডিফল্ট '',
`Description` VarChar (255) না শূন্য ডিফল্ট '',
`Time_added` কোন int (10) স্বাক্ষরবিহীন না শূন্য ডিফল্ট '0',
`Duration` কোন int (10) স্বাক্ষরবিহীন না শূন্য ডিফল্ট '0',
`Ready` tinyint (1) না শূন্য ডিফল্ট '0',
প্রাথমিক কী (`id`)
)
(টেবিল `channels` তৈরি
`Id` কোন int (11) স্বাক্ষরবিহীন না শূন্য ডিফল্ট '0',
`Name` VarChar (80) না শূন্য ডিফল্ট '',
`Owner` কোন int (11) না শূন্য ডিফল্ট '0',
`Description` VarChar (80) না শূন্য ডিফল্ট '',
`Randomplay` tinyint (1) না শূন্য ডিফল্ট '0',
প্রাথমিক কী (`id`)
)
বর্তমান রিলিজের মধ্যে নতুন কী:
· এই রিলিজে সার্ভার স্থাপনের জন্য নতুন ডকুমেন্টেশন অনেক উপলব্ধ করা হয়.
· একটি ইনস্টল, কম্পাইল হবে, যা পাওয়া যায় স্ক্রিপ্ট, এবং সেটআপ এক ধাপ streamnik সার্ভার এখন পর্যন্ত.
· কনফিগারেশন এখন /etc/streamnik.conf এ স্থাপন করা হয়, যা একটি কনফিগারেশন ফাইল, দ্বারা করা সম্ভব.
· উপরন্তু, ভিন্ন Linux ডিস্ট্রিবিউশন অধীনে কম্পাইল জন্য যেমন সংশোধন করা হয়েছে কিছু ছোটখাট bugfixes, আছে.
সফটওয়্যার বিবরণ:
সংস্করণ: 0.02
তারিখ আপলোড: 3 Jun 15
লাইসেন্স: বিনামূল্যে
জনপ্রিয়তা: 2
পাওয়া মন্তব্যসমূহ না