ภาพรวม
คําแนะนํานี้มีไว้สําหรับนักพัฒนาแอปพลิเคชันไคลเอ็นต์ API ที่ใช้ทรัพยากร liveStream
และ liveBroadcast
เริ่มต้นของช่อง YouTube เพื่อสตรีมเนื้อหาสด ฟีเจอร์นี้มีไว้เพื่อช่วยให้แน่ใจว่าแอปพลิเคชันของคุณจะได้รับการจัดการการเลิกใช้งานการออกอากาศและสตรีมเริ่มต้นอย่างราบรื่น และมีความเกี่ยวข้องกับคุณหากข้อความต่อไปนี้ตรงกับแอปพลิเคชันของคุณ
- ตรวจสอบค่าของพร็อพเพอร์ตี้
isDefaultBroadcast
ของทรัพยากรliveBroadcast
- ตรวจสอบค่าของพร็อพเพอร์ตี้
isDefaultStream
ของทรัพยากรliveStream
โดยเรียกใช้เมธอด
liveBroadcasts.list
และกําหนดค่าพารามิเตอร์broadcastType
เป็นpersistent
ณ วันที่เลิกใช้งาน- หากค่าพารามิเตอร์
broadcastType
คือpersistent
เมธอดliveBroadcasts.list
จะไม่แสดงผลลัพธ์ใดๆ - หากค่าพารามิเตอร์
broadcastType
คือall
เมธอดliveBroadcasts.list
จะไม่แสดงการออกอากาศถาวรที่คงอยู่ก่อนเวลาดังกล่าว
- หากค่าพารามิเตอร์
หากใบสมัครของคุณได้รับผลกระทบ โปรดดูส่วนการอัปเดตใบสมัครของคุณ ซึ่งอธิบายถึงการเปลี่ยนแปลงของกระบวนการที่อาจต้องดําเนินการจากการเลิกใช้งานนี้ ส่วนดังกล่าวจะระบุขั้นตอนที่เจาะจงในคู่มืออายุการใช้งานของการออกอากาศ ซึ่งโดยทั่วไปไคลเอ็นต์ API ของคุณอาจไม่ทําตามหากปัจจุบันใช้การออกอากาศและสตรีมเริ่มต้น
จะเกิดอะไรขึ้น
ตั้งแต่ปี 2015 เป็นต้นมา YouTube ได้สร้างสตรีมเริ่มต้นและประกาศเริ่มต้นของช่องโดยอัตโนมัติเมื่อช่องเปิดใช้สตรีมมิงแบบสด มีสตรีมเริ่มต้นอยู่ตลอดและไม่สามารถลบได้ ในทํานองเดียวกัน การออกอากาศเริ่มต้นก็ถือว่าถาวร เหตุการณ์นี้เกิดขึ้นตลอดเวลา ไม่มีเวลาเริ่มต้นหรือสิ้นสุดที่เชื่อมโยงกับเหตุการณ์ และไม่เชื่อมโยงกับเหตุการณ์ใดเหตุการณ์หนึ่ง
นับตั้งแต่วันที่เลิกใช้งานข้างต้น YouTube จะไม่สร้างสตรีมและการออกอากาศเริ่มต้นอีกต่อไป การเปลี่ยนแปลงนี้จะส่งผลต่อแอปพลิเคชันไคลเอ็นต์ที่ใช้ทรัพยากรเหล่านั้นในการเผยแพร่เนื้อหาสด การดําเนินการนี้จะส่งผลต่อแอปพลิเคชันที่มีการปรับแต่งอินเทอร์เฟซผู้ใช้เพื่อแยกความแตกต่างระหว่างทรัพยากรเริ่มต้นเหล่านั้นกับการออกอากาศและสตรีมอื่นๆ ที่เจ้าของช่องสร้างขึ้นด้วย
ไคลเอ็นต์ API จะต้องสร้างและจัดการทรัพยากร liveBroadcast
และ liveStream
รวมถึงเชื่อมโยงทรัพยากรเหล่านั้นเข้าด้วยกัน แทนที่จะอาศัยทรัพยากรเริ่มต้น
กําลังอัปเดตแอปพลิเคชัน
หากต้องการตรวจสอบคําศัพท์อย่างรวดเร็ว การประกาศจะแสดงเหตุการณ์ที่คุณดูได้บน YouTube ตามที่เกิดขึ้น และสตรีมเป็นกลไกในการส่งเนื้อหาวิดีโอจริงไปยัง YouTube การออกอากาศอาจเป็นได้ทั้งการผูกกับสตรีม
การย้ายข้อมูลจากการออกอากาศเริ่มต้น
ก่อนการเลิกใช้งานนี้ ไคลเอ็นต์ API อาจเลือกระหว่างใช้การออกอากาศเริ่มต้นของช่องหรือสร้างการออกอากาศเฉพาะเหตุการณ์ก็ได้ การออกอากาศเริ่มต้นเป็นทรัพยากรถาวรที่สามารถใช้ซ้ําได้สําหรับหลายเหตุการณ์ ส่วนทรัพยากรการออกอากาศเฉพาะกิจกรรมเป็นทรัพยากรแบบใช้ครั้งเดียวที่สอดคล้องกับวิดีโอ YouTube รายการเดียว
แอปพลิเคชันไคลเอ็นต์จะใช้การส่งข้อมูลเริ่มต้นหากเรียกใช้เมธอด liveBroadcasts.list
แล้วทําสิ่งต่อไปนี้
- ซึ่งตั้งค่าพารามิเตอร์
broadcastType
เป็นpersistent
โดยคําขอนี้จะรวบรวมเฉพาะการออกอากาศเริ่มต้นเท่านั้น - ซึ่งตั้งค่าพารามิเตอร์
broadcastType
เป็นall
แล้วระบุทรัพยากรliveBroadcast
ในการตอบสนองของ API ที่ค่าของพร็อพเพอร์ตี้isDefaultBroadcast
คือtrue
หลังจากการเลิกใช้งาน YouTube จะสนับสนุนเฉพาะการออกอากาศเฉพาะกิจกรรมเท่านั้น
ซึ่งหมายความว่าแทนที่แอปพลิเคชันเริ่มต้น แอปพลิเคชันไคลเอ็นต์จะต้องสร้างทรัพยากร liveBroadcast
สําหรับแต่ละเหตุการณ์การออกอากาศแต่ละรายการ
หากต้องการสร้างทรัพยากร liveBroadcast
ให้เรียกใช้เมธอด liveBroadcasts.insert
ขั้นตอนนี้ได้อธิบายไว้ในขั้นตอนที่ 1.1 ของคู่มือ "อายุการใช้งานของการออกอากาศ"
หากยังไม่ได้ทําเช่นนั้น อินเทอร์เฟซผู้ใช้ต้องมีกลไกให้ผู้ใช้แยกความแตกต่างและเลือกระหว่างการออกอากาศ เฉพาะเหตุการณ์ที่กําลังจะเกิดขึ้นได้
การย้ายข้อมูลจากสตรีมเริ่มต้น
สตรีมช่วยให้คุณส่งเนื้อหาเสียงไปยัง YouTube ได้ ซึ่งจะกําหนดการตั้งค่าสําหรับการสตรีมเนื้อหาไปยัง YouTube เป็นเรื่องปกติที่ผู้ออกอากาศจะใช้สตรีมเดียวกันซ้ําในการออกอากาศหลายรายการหากการออกอากาศเหล่านั้นเกิดขึ้นในเวลาที่ต่างกัน
แม้ว่าแอปพลิเคชันของคุณจะใช้สตรีมเริ่มต้นไม่ได้ แต่ก็สร้างสตรีมที่นํากลับมาใช้ใหม่ได้สําหรับการออกอากาศแต่ละครั้ง หากต้องการสร้างทรัพยากร liveStream
ให้เรียกใช้เมธอด liveStreams.insert
โดยทําตามวิธีการในขั้นตอนที่ 1.2 ของคู่มือ "อายุการใช้งานของการออกอากาศ" โดยค่าเริ่มต้น สตรีมที่สร้างใหม่จะใช้ซ้ําได้ อย่างไรก็ตาม คุณตั้งค่าพร็อพเพอร์ตี้ contentDetails.isReusable
เป็น false
เพื่อสร้างสตรีมแบบใช้ครั้งเดียวได้ รวมถึงมีความสัมพันธ์แบบ 1 ต่อ 1 ระหว่างการออกอากาศและสตรีม
รายการต่อไปนี้มีพร็อพเพอร์ตี้ทั้ง 4 รายการ นอกเหนือจากชื่อสตรีมและคําอธิบายสตรีมที่คุณตั้งค่าเมื่อสร้างสตรีมใหม่ได้ รายการนี้จะแสดงค่าที่สตรีมเริ่มต้นใช้สําหรับแต่ละพร็อพเพอร์ตี้ ซึ่งน่าจะเป็นการตั้งค่าที่คุณต้องการใช้ในแอปพลิเคชันไคลเอ็นต์ หากคุณกําลังจะเลิกใช้สตรีมเริ่มต้น
cdn.frameRate
-variable
cdn.ingestionType
-rtmp
cdn.resolution
-variable
contentDetails.isReusable
-true
การเชื่อมโยงการออกอากาศกับสตรีม
ทรัพยากร liveBroadcast
แต่ละรายการต้องเชื่อมโยงกับสตรีมเดียวจริงๆ ก่อนที่การถ่ายทอดสดบน YouTube จะเริ่มต้นได้ (การออกอากาศไม่มีผลเชื่อมโยงกับ
สตรีม ณ เวลาที่สร้าง)
ขั้นตอนการเชื่อมโยงจะได้รับการจัดการโดยอัตโนมัติสําหรับการออกอากาศเริ่มต้น ซึ่งผูกกับสตรีมเริ่มต้น แต่หลังจากวันที่เลิกใช้งาน แอปพลิเคชันไคลเอ็นต์จะต้องจัดการกระบวนการดังกล่าวสําหรับการออกอากาศทั้งหมด
หากต้องการเชื่อมโยงการออกอากาศกับสตรีม ให้เรียกใช้เมธอด liveBroadcasts.bind
ตามที่อธิบายไว้ในขั้นตอนที่ 1.3 ของคู่มือ "อายุการใช้งานของการออกอากาศ"
- หากใช้สตรีมที่นํากลับมาใช้ใหม่ได้ คุณจะสร้างสตรีมได้ 1 ครั้ง แล้วเชื่อมโยงการออกอากาศทุกรายการไปยังสตรีมนั้น
- หากไม่ได้ใช้สตรีมที่นํากลับมาใช้ใหม่ได้ คุณต้องสร้างการออกอากาศและสตรีม จากนั้นเชื่อมโยง 2 รายการดังกล่าวเข้าด้วยกัน
การทดสอบการออกอากาศ
เมื่อคุณไม่ได้ใช้การออกอากาศเริ่มต้น คุณจะมีตัวเลือกให้ทดสอบการประกาศ ในการทดสอบ ให้ฝังโปรแกรมเล่นที่ให้คุณดูตัวอย่างวิดีโอออกอากาศตามที่ผู้ชม YouTube เห็น แต่การเผยแพร่จะไม่แสดงให้ผู้ชมเห็น
หากก่อนหน้านี้ลูกค้า API ของคุณใช้การออกอากาศและสตรีมเริ่มต้น และคุณต้องการเพิ่มช่วงการทดสอบในกระบวนการสตรีมมิง โปรดดูขั้นตอนที่ 3 ของคู่มือ "อายุการใช้งานของการออกอากาศ"
หากต้องการทดสอบสตรีม จากนั้นเมื่อแทรกการออกอากาศ คุณต้องตั้งค่าพร็อพเพอร์ตี้ contentDetails.MonitorStream.enableMonitorStream เป็น true
และพร็อพเพอร์ตี้ contentDetails.enableAutoStart เป็น
false
ค่าเหล่านี้เป็นค่าเริ่มต้นสําหรับพร็อพเพอร์ตี้ทั้งสอง
การใช้ฟีเจอร์เริ่มอัตโนมัติและหยุดอัตโนมัติ
การออกอากาศเริ่มต้นจะเริ่มโดยอัตโนมัติทุกครั้งที่คุณเริ่มสตรีมวิดีโอในสตรีมเริ่มต้น ในทํานองเดียวกัน การออกอากาศเริ่มต้นจะสิ้นสุดหลังจากที่คุณหยุดสตรีมวิดีโอ เซสชันสตรีมมิงแต่ละเซสชันโดยใช้แหล่งข้อมูลเริ่มต้นเหล่านั้น จะกลายเป็นวิดีโอในช่องของคุณในภายหลัง
แม้ว่าฟีเจอร์เริ่มอัตโนมัติและหยุดอัตโนมัติเป็นลักษณะการทํางานเริ่มต้นของการออกอากาศเริ่มต้น แต่ฟีเจอร์เหล่านั้นเป็นตัวเลือกที่ไม่บังคับและต้องเปิดใช้สําหรับการประกาศอื่นๆ หากต้องการใช้ฟีเจอร์เหล่านี้ เมื่อแทรกการออกอากาศ คุณต้องตั้งค่าพร็อพเพอร์ตี้ contentDetails.enableAutoStart และ contentDetails.enableAutoStop เป็น true
ฟีเจอร์เหล่านี้เป็นอิสระ คุณจึงเลือกใช้เพียงฟีเจอร์เดียวได้
หากคุณไม่เปิดใช้ฟีเจอร์เริ่มอัตโนมัติและหยุดอัตโนมัติสําหรับการออกอากาศใหม่ ไคลเอ็นต์ API จะต้องเรียกใช้เมธอด liveBroadcasts.transition เพื่ออัปเดตสถานะการออกอากาศเมื่อคุณเริ่มและสตรีมวิดีโอจนจบ ในคู่มือ "ชีวิตของการออกอากาศ" โปรดดูขั้นตอนที่ 4.3 และขั้นตอนที่ 5.2 สําหรับคําแนะนําในการจัดการการเปลี่ยนเหล่านี้ที่จุดเริ่มต้นและจุดสิ้นสุดของการประกาศ