Могу подсказать про ютуб, в прошлом году с ним возился.
Получаем youtubeVideoId
/**
* выдергивает videoId из url или embed
* тесты здесь: http://jsfiddle.net/1j5do56g/1/
*
* @param string input
* @returns string youtube video id
*/
function youtubeGetID(input){
var r = input.replace(/(>|<)/gi,'').split(/(vi\/|v=|\/v\/|youtu\.be\/|\/embed\/)/)
if(r[2] !== undefined) {
return r[2].split(/[^0-9a-z_\-]/i)[0]
} else {
r = input.match(/^.*(?:(?:youtu\.be\/|v\/|vi\/|u\/\w\/|embed\/)|(?:(?:watch)?\?v(?:i)?=|\&v(?:i)?=))([^#\&\?]*).*/)
if(r && r[1] !== undefined) {
return r[1]
}
else return input
}
}
Тест:
jsfiddle.net/1j5do56g/1
Делаем ссылку и используем как src для iframe
// parse and update id
var youtubeId = youtubeGetID(field.val())
field.val(youtubeId)
// update iframe
var newSrc = 'http://www.youtube.com/embed/' + youtubeId
var iframe = field.closest('.panel-body').find('iframe')
iframe.attr('src', newSrc)
С остальными сервисами такая-же история. Можете поискать готовые решения.