Как стать автором
Поиск
Написать публикацию
Обновить

Децентрализация контента сайта

Время на прочтение3 мин
Количество просмотров7K
Предлагаю дать возможность пользователям самостоятельно выбирать сервис по доставке контента. На странице остаётся только информация о контенте (Название композиции, фильма, книги).

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

Пример:


На странице находится такое содержимое.
<audio>
	Vivaldi Summer mvt 1 Allegro non molto - John Harrison violin
</audio>


Сервис(пользовательский скрипт) подключенный пользователем читает это содержимое и меняет на конкретные источники.
<audio>
	<source src="http://upload.wikimedia.org/wikipedia/commons/1/19/04_-_Vivaldi_Summer_mvt_1_Allegro_non_molto_-_John_Harrison_violin.ogg">
</audio>


Причем это могут быть даже локальные файлы.
<audio>
	<source src="file:///d:/music/04_-_Vivaldi_Summer_mvt_1_Allegro_non_molto_-_John_Harrison_violin.ogg">
</audio>


И не надо заново загружать файл из интернета из-за того что проигрывается эта композиция на веб сайте.

Для пользователя происходит все незаметно. Он просто нажимает на кнопку play и файл воспроизводится. И не важно при этом откуда.

Пример пользы такого подхода уже сейчас:


На сайте Вконтакте удаляется музыка. При этом в плейлисте пользователя остается строчка с названием композиции. Простой скрипт может используя эту информацию найти этот же трек на Яндекс.Музыке(где он легально) и воспроизвести не требуя от пользователя дополнительных действий.

Веб-радио.


Также можно организовать и веб-радио. Радиостанции достаточно передать только название композиции и позицию в ней на данный момент а сервис(пользовательский скрипт) поставляет саму композицию. При этом забота о лицензии на трек перекладывается на поставщика.

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

Небольшое демо:


		<h4>Blender Foundation Movies Collection</h4>
				
		<h5>Blender Foundation - Sintel (2010)</h5>
		<video width=640 height=480>Blender Foundation - Sintel (2010)</video>
		<h5>Blender Foundation - Big Buck Bunny (2007)</h5>
		<video width=640 height=480>Blender Foundation - Big Buck Bunny (2007)</video>
		<h5>Blender Foundation - Elephants Dream (2006)</h5>
		<video width=640 height=480>Blender Foundation - Elephants Dream (2006)</video>


// Этот скрипт установлен у пользователя в браузере (Userscript) 
// Перебираем все теги Video на странице
var videos = document.getElementsByTagName("VIDEO")

for (var i=videos.length-1; i >= 0 ; --i){
	var video = videos[i];
	
	GM_xmlhttpRequest({
	  method: "POST",
	  url: "http://www.example.com/get_video",
	  headers: {
		"Content-Type": "application/x-www-form-urlencoded"
	  },
	  data: video.textContent,
	  onload: function(response) {
		var url = response.responseText;
		if (url){ //Если нашлось у контент-провайдера показываем.
			var iframe = document.createElement("IFRAME")
			iframe.style = video.style
			iframe.width = video.width
			iframe.height = video.height
			iframe.src = url
			video.parentNode.replaceChild(iframe, video)
		}
	  }
	});
}


Демка
Теги:
Хабы:
Всего голосов 17: ↑9 и ↓8+1
Комментарии61

Публикации

Ближайшие события