Описание


  1. ПРОСТО помести эти файлы в директорию с музыкой 🎵
  2. ПРОСТО запусти runme
  3. ПРОСТО слушай Радио Анонимус 🎧

Правила очень просты:

  • Ты - вещаешь
  • Мы - слушаем

⏱ Если не коннектится - значит кто-то уже занял место, жди.

⏱ Если коннектится, но играет не то - проси активировать. ЖДИ.


➡ ИСТОРИЯ УСПЕШНОГО ДИДЖЕЯ: КАК ВСЕ НАСТРОИТЬ ПРОСТО И БЫСТРО ⬅


Ссылки

Ссылка Хеш MD5 для сверки
Взять для спермы e22ab41fbdcee84d4c9228223efc996e
Взять для прыщей 3864ea5bc8ff86dd3a232d401a3b56cf

Небинарное вещание

Есть возможность вещать и без бинарников. Необходим лишь FFmpeg. Ниже приведён скрипт на баше. Это сделано для тех, у кого прямые руки и кто испытывает какие-либо проблемы с писсуаром. "ПОРОЛЕ" надо заменить на ваш пароль для вещания.

#!/bin/bash

EXTS="ts|mp3|ogg|opus|flac|aac|wav|m4a|webm|mp4|mkv"


while true; do
find . | grep -E "$EXTS$" | while read MUSICFILE; do echo "Processing $MUSICFILE" > /dev/stderr;
ffmpeg -v 0 -nostdin -re -i "$MUSICFILE" -f s16le -ar 44100 -ac 2 - ;rm -v "$MUSICFILE"; done | ffmpeg -re -f s16le -ar 44100 -ac 2 -i - -f mp3 -ab 192000 -legacy_icecast 1 icecast://source:ПОРОЛЕ@anon.fm:8000/music

echo End of files
sleep 10;
done
[17:49:29] <yiiii> ПОЛНЫЙ АНАЛОГ ГОТОВ
[17:51:09] <yiiii> КТО ХОЧЕТ ВЕЩАТЬ, ИЩЕТ ВОЗМОЖНОСТЬ, КТО НЕ ХОЧЕТ - ПРИЧИНЫ
[17:51:52] <yiiii> Я НАПИСАЛ КОД
[17:52:01] <yiiii> УНИКАЛЬНОЕ РЕШЕНИЕ
[17:53:09] <yiiii> все, финальная версия, удаляю у себя

Что такое pissing?

Писсуар - одна из деталек радивы, которая пилилась ради регулярного расписания, для внутреннего использования. Но ради лулзов было выложено и вроде как штука оказалась хорошей и полезной. Но скорее в экспериментальном режиме.

Например, ты просишь диджеев уже 2 месяца поставить все выпуски передачи "от винта", но диджеям как всегда лень, у них нет времени, а то и вообще прокрастинация пополам с депрессией. Ранее, не дождавшись результата, можно было съебать на синтипоп, но теперь:

  1. Скачиваем все выпуски "от винта" (youtube-dl в помощь)
  2. Кладем рядышком Pissing.exe и runme.bat
  3. Ищем планировщик задач / учимся его пользовать
  4. По расписанию, когда захотим, запускаем runme.bat (главное разобраться с путями, а то можно вещать что-то не то, а то и музыку проебсти)
  5. Наслаждаемся

Что нового?


Возможности

Писсуар - это фактически профессиональная вещалка, которая отличается от своих собратьев только тем, что для вещания нужно только указать пароль на вещание.

Все остальные настройки уже вбиты, а интерфейс не нужен.

Писсуар сканирует текущую директорию на предмет музыкальных файлов и играет ее, очередность как пойдет.

Пожирает любые медийные файлы, включая flac и avi.

Если указать ключ --remove, то будет удалять проигранные треки, не допуская их повторного проигрывания. Отсюда и название - pissing, от первоначального проекта pisspond, директории, куда складывались бы все реквесты, а потом оттуда и удалялись. Эдакое место, куда каждый может вложить чуточку своего человеческого тепла и души, внести что-то общее.


⚙ Настройки

Некоторые настройки в писуаре всеже есть, задаются через опции командной строки (для этого и нужен runme.bat), вот что тут у нас есть:

  1. --remove

    Будет удалять проигранные треки.
    !!!ВНИМАНИЕ, ФАЙЛЫ УДАЛЯЮТСЯ ФИЗИЧЕСКИ С ДИСКА!!!

  2. --name "By REPTEELOID INC"

    будет как имя вашего потока

  3. --bitrate 192000

    поставит битрейт в 192 килобита, по умолчанию кодирование в 320, но интернеты нынче толстые

  4. --pass "4567568365987236587687644"

    пароль (ключ) для вещания. Выдается в кукарекалке или в чатике, как правило - 1 штука на человека, чтобы если пациента пришлось банить, другие бы не пострадали.

  5. --notags

    не будет вещать теги, можно не палить го(в/д)ноту

Если не указать --pass, то будет создавать тестовый эфир в виде mp3-файла, именно оно передается на сервер во время вещания, а если пароля нет - просто записывается в файл.

Этим простым способом можно запилить 10-часовую версию любого анимешного лупа, так как оно начнет кушать в том числе и свой собственный тестовый эфир.

Какие-то еще настройки там есть, но думаю, трогать их не стоит, ведь преумножающий познания только преумножает скорбь.


Время вещания

Так как днем все или спят, или рабуют, то радивой мало кто занимается, а по вечерам все вылазиют. Потому, когда начинают эфирить по вечерам, у диджеев баттхерт.

В качестве варианта нашлось такое решение: писуары работают с 8 до 19 часов по мск автоматичеки, а в остальное время диджей должен активировать ваш поток в ручном режиме, просто попросите диджея.

Каждый час звучит часовая отбивка, которая вас дропнет. Нет. Уже не дропнет. Можно вещать 10 часовые треки, но за злоупотребление вас зобанют.

Если есть более красивые идеи разнести диджеев и слушателей, то добро пожаловать.


...Тут что-то еще хотел добавить

Но к сожалению забыл, пока писал все это выше. Вы можете написать что-то сами, пожелания всегда приветствуются. Можно спрашивать ответы.


FAQ

Где этот runme.bat?

Это текстовый файл для запуска. Он выглядит примерно так:

pissing.exe --pass 9834pAssWordzz --remove --name "by eeaaffaa"

Можно набрать в блокноте этот текст и выбрав тип файла "*.*", сохранить как runme.bat. Ключи запуска описаны выше, где брать пароль - тоже.

Для неочень понятливых: вы этот файлик создаете сами.


Что за странные теги?

Если внутри mp3-файла есть теги, то он берет их, если у тебя mp4, то теги может есть, а может и нету, а если у тебя wav или avi (оно их тоже кушает), то тегов точно никогда не будет. Значит, надо их где-то взять. И оно берется из имени файла. К сожалению, многие файлы именованы не "Артист - Трек", а к примеру "10 Трек" или, что еще хуже "ngcuyrgniujyvysmpd[download at parasha.com].mp3", что тоже попадает в треки. Чтобы этого избежать, была придумана шутка с тегами вида "C:\Мои документы\Мамино\10 Трек.mp3", однако ее смысла и намека поняли не многие. Еще раз, для самых непонятливых: чтобы таких тегов не было, достаточно их проставить в самом файле. Если уж ты полностью ленивая жопа, то пожалуйста, переименуй их во что-то нормальное, вычисти числа и пиары параш. Если ты совсем ленивая жопа как я, то вещай без тегов вообще, для этого сделан ключик --notags. Если же ты хочешь управлять очередью треков, выставлять теги в вещалке, прерывать треки и делать крутые запилы, как настоящие диджеи на своих вертушках, то изучай профессиональный софт для диджеинга.


У тебя хуевый рандом?

Рандома там нет вообще, порядок проигрывания тот, в каком порядке ОСь выдает имена файлов команде readdir. Очередность треков зависит от имени и фазы луны.

К примеру, под прыщами первыми проигрываются те файлы, которые были последними добавлены в директорию (на момент ее считывания, а не после каждого трека), а вот под виндой вообще как повезет. Если же ты хочешь управлять очередью треков, выставлять теги в вещалке, прерывать треки и делать крутые запилы, как настоящие диджеи на своих вертушках, то изучай профессиональный софт для диджеинга.


Оно удаляет файлы с диска или из своего списка?

С диска, физически, насовсем.

Обычно я беру какие-то раздачи и скармливаю писуару. Как только оно закончилось - все, можно переходить к следующей.

Никаких баз и списков оно не ведет.

да, вы можете проебать всю музыку


Оно удаляет файлы совсем-совсем?

Да, совсем-совсем.


Я запустил, а что это оно начало делать?

Как и любая другая программа, скачанная из интернетов, она начала форматировать ваш жесткий диск. Чтобы этого избежать, как правило нужно читать документацию внимательнее. Вот вы эту страничку прочитаете и поймете, что у вас теперь есть тестовый файлик, который мог бы быть в эфире и ничего страшного не произошло. Будте внимательнее.


Я бы хотел читать кукарекалку/делать скретчи

Если ты хочешь быть полноправным диджеем, отвечать слушателям и читать что им пишут, то становись им! Если дать такое каждому Писуарию, то смысла в диджействе не будет вообще.

Если же тебе нехватает функций, то ты всегда можешь сменить софт на какой-то другой, более подходящий. Главное разобраться!


...

...

...

... Пиши, возможно тут будет ответ на твой вопрос!


Слишком мало функций, я думал будет намного больше

Не вопрос, бери другую вещалку и вещай сколько влезет.

Проблема профессионального софта в том, что в этих тысячах кнопочек очень сложно разобраться, а если и разобраться, то порой надоедает все их нажимать для добавления единичного трека. Поэтому если "взрослый софт" доебал, то наш Писуар будет самым хорошим решением. Если мало фич - тогда обратно.

Наш писсуар фактически является еще одной вещалкой, только опций в нем поменьше, да и пользоваться им проще. А чем больше опций, тем сложнее в них разобраться, потому не проси нас помогать тебе. Мы не со зла, просто не можем знать все и про все. Если хочешь большего, но по каким-то причинам не готов стать полноправным диджеем, то дерзай, все к твоим услугам.

Вот эти волшебные реквизиты тебе могут помочь в настройке других вещалок:

Сервер anon.fm (если вещалка кривая и требует IP: 78.46.133.142)
Порт 8000
Протокол Icecast2
Логин source (если такое поле есть)
Кодек mp3/mp3Pro/Lame/vorbis (ogg)
Sample rate 44100 (44.1kHz)
Каналов 2 (стерео)
Mount point /music

Как был сделан день КИШок

Как и было написано выше, писуар изначально задумывался для автоматизации вещания радивы, а вот скриптования пока нет. Врочем, скриптование изначально задумывалось, и более того, в него была заложена идея коллективного творчества.

Коллективное творчество можно сравнить в сосудом, куда каждый может вложить что-то от себя. Отсюда и раннее название этого проекта - pisspond. Такова жизнь.

Кратко: создаем директорию где будет запущен писуар и настраиваем туда испражнение треков любимым методом, хоть скриптами на любимом языке, хоть файловым менеджером, хоть скайпом и передачей файлов по нему. Вариантов много.

Но приступим к той опердени, которая была написана на день киша:

			use Data::Dumper;


			$urine="z:/urine/"; # это директория, которую наполняем


			# gen list / readdir
			# shuffle
			# every

			# а это контент, которым будем наполнять
			# тут у нас джинглы
			# анимешность пополам с дискографией скриллекса
			# модульная музыка, которую я хотел ставить по утрам
			# голосовые нарезки, которые я посвятил кишу

			@jingles=&shuffle(getRecursiveFiles("/jingles/"));
			@anime=&shuffle(grep{/mp3$/i}getRecursiveFiles("tmp/Skrillex - Discography - 2007-2014"),getRecursiveFiles("Mitsudomoe [MP3]"));
			@kish=&shuffle(grep{/mp3$/i}getRecursiveFiles("tmp/Король и Шут/"));
			@mods=&shuffle(getRecursiveFiles("morning/"));
			@voices=&shuffle(getRecursiveFiles("cutter/"));

			# Формируем плейлист с весовыми коэфициентами
			@playlist=every(\@mods,1,\@jingles,1,\@anime,1);
			@playlist=every(\@playlist,3,\@voices,1,\@kish,1);


			$count=0;

			foreach(@playlist){
			print "$_\n";


			# Копируем файлы и ждем

			open(dd,$_);
			binmode(dd);
			s/.+\///s;
			open(oo,">".$urine."/".$_);
			$count++;
			binmode(oo);
			print oo =5){
			sleep 5;
			}

			}



			sub every{
			my @pos=();
			my @src=();
			my @rate=();
			my @weight=();
			while(@_){
			push(@src,shift);
			push(@weight,shift);
			}

			my @res=();
			my $num=@src;
			my @finished=(1..$num);
			my $q,$min,$found;

			while(grep{$_>0}@finished){
			$min=0xFFFFFFFF;
			for($q=0;$q<$num;$q++){
			if($min>$rate[$q]){$min=$rate[$q];$found=$q;}
			}
			$q=$found;
			print "found $q $pos[$q]\n";
			if($pos[$q]==@{$src[$q]}){$pos[$q]=0;$finished[$q]=0;}
			$rate[$q]+=$weight[$q];
			push(@res,$src[$q]->[$pos[$q]]);
			$pos[$q]++;
			}
			return(@res);
			}

			sub getSeq{
			my $pref=shift;
			my $nums=shift;
			return(map{$pref.$_}(1..$nums));
			}


			sub getRecursiveFiles{
			        my $df;
			        opendir($df,$_[0]);
			        my @l=readdir($df);
			        close($df);
			        return(map{-d $_?getRecursiveFiles($_):$_}map{$_[0]."/".$_}grep{!/^\.{1,2}$/}@l);
			}



			sub shuffle{
			my @src=@_;
			my $q,$r;
			my $tmp;
			for($q=0;$q<@src;$q++){
			$r=int(rand()*@src);
			$tmp=$src[$r];
			$src[$r]=$src[$q];
			$src[$q]=$tmp;
			}
			return(@src);
			}