单个嵌入 URL 中的多个 YouTube 视频
Posted
技术标签:
【中文标题】单个嵌入 URL 中的多个 YouTube 视频【英文标题】:Multiple YouTube videos in a single embed URL 【发布时间】:2020-07-24 10:22:15 【问题描述】:是否可以创建一个包含多个视频的开始和结束时间的嵌入 URL;像下面?
http://www.youtube.com/embed/VTNSdABrKAI?start=134&end=225/embed/I4LoGhyb2uc?start=172&end=257
因此下一个剪辑在同一视频帧中播放,而不是在网页上放置多个嵌入 URL;
http://www.youtube.com/embed/VTNSdABrKAI?start=134&end=225
http://www.youtube.com/embed/I4LoGhyb2uc?start=172&end=257
或者避免创建、编辑和上传全新的 YouTube 视频以及处理以下版权主张?
https://www.youtube.com/watch?v=9DNmc618JwE
【问题讨论】:
您的意思是可以使用嵌入 URL 中的视频 ID 创建自定义播放列表吗? @NewToJS,是的,包含视频 ID 的播放列表以及播放列表中每个视频的自定义开始和结束时间。 【参考方案1】:Youtube 允许您在自己的频道上programmatically create playlists 和add items to playlists。
playlistItems/insert
调用还允许您为剪辑提供 specify 和 position
、startAt
和 endAt
属性,这似乎涵盖了您的用例。
使用此 API 的一个注意事项 - 您必须是 registered with them to use it
播放列表可以包含up to 200 videos
UPD 我运行了以下 API 请求并成功创建了a playlist。
curl --request POST \
'https://www.googleapis.com/youtube/v3/playlists?part=snippet%2Cstatus&key=[YOUR_API_KEY]' \
--header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '"snippet":"title":"Sample playlist created via API","description":"This is a sample playlist description.","status":"privacyStatus":"unlisted"' \
--compressed
curl --request POST \
'https://www.googleapis.com/youtube/v3/playlistItems?part=snippet%2CcontentDetails&key=[YOUR_API_KEY]' \
--header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '"snippet":"playlistId":"PL5W0uIHD5lLZAK1reCuTDFpGMPygNDWvm","position":0,"resourceId":"kind":"youtube#video","videoId":"PLOPygVcaVE","contentDetails":"videoId":"PLOPygVcaVE","startAt":"PT4H37M0.000S","endAt":"PT4H38M0.000S"' \
--compressed
curl --request POST \
'https://www.googleapis.com/youtube/v3/playlistItems?part=snippet%2CcontentDetails&key=[YOUR_API_KEY]' \
--header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '"snippet":"playlistId":"PL5W0uIHD5lLZAK1reCuTDFpGMPygNDWvm","position":1,"resourceId":"kind":"youtube#video","videoId":"L_LUpnjgPso","contentDetails":"videoId":"L_LUpnjgPso","startAt":"PT8H37M0.000S","endAt":"PT8H38M0.000S"' \
--compressed
但是,YouTube 似乎有 deprecated、contentDetails.startAt
和 contentDetails.endAt
,我建议你依赖它们:开始时间似乎仍然有效,但剪辑一直播放到结束。
我建议您查看来自 this SO thread 的建议 - 您也许可以从那里的答案中汲取一些想法(例如在播放器中使用 3rd 方或 javascript 事件)
【讨论】:
您能否分享一个包含 2 个视频的示例播放列表,其中两个视频都指定了开始和结束时间? 感谢分享示例。http://www.youtubestartend.com/
无法添加多个视频。也找不到 JavaScript 播放器事件的示例。以上是关于单个嵌入 URL 中的多个 YouTube 视频的主要内容,如果未能解决你的问题,请参考以下文章
将 Youtube 视频嵌入 Facebook 并以特定时间码播放
Youtube Data API:在单个请求中按 ID 检索多个视频条目