LiveBroadcasts

ตอนนี้ API รองรับความสามารถในการตั้งสถานะการถ่ายทอดสดเป็น "สร้างมาเพื่อเด็ก" แล้ว และขณะนี้แหล่งข้อมูลของ liveBroadcast จะมีพร็อพเพอร์ตี้ที่ระบุสถานะ "สร้างมาเพื่อเด็ก" ของการถ่ายทอดสดดังกล่าว นอกจากนี้ เรายังปรับปรุงข้อกำหนดในการให้บริการและนโยบายสำหรับนักพัฒนาซอฟต์แวร์ YouTube API เมื่อวันที่ 10 มกราคม 2020 ด้วย โปรดดูประวัติการแก้ไขสำหรับบริการ YouTube Live Streaming API และข้อกำหนดในการให้บริการของบริการ YouTube API สำหรับข้อมูลเพิ่มเติม

ทรัพยากร liveBroadcast แสดงถึงกิจกรรมที่จะมีการสตรีมผ่านวิดีโอสดบน YouTube

วิธีการ

API รองรับเมธอดต่อไปนี้สำหรับทรัพยากร liveBroadcasts

list
แสดงผลรายการการออกอากาศใน YouTube ที่ตรงกับพารามิเตอร์คำขอ API ลองใช้เลย
แทรก
สร้างการออกอากาศ ลองใช้เลย
อัปเดต
อัปเดตการออกอากาศ เช่น คุณสามารถแก้ไขการตั้งค่าการออกอากาศที่กำหนดไว้ในออบเจ็กต์ contentDetails ของทรัพยากร liveBroadcast ได้ ลองเลย
ลบ
ลบการประกาศ ลองใช้เลย
เชื่อมโยง
เชื่อมโยงการออกอากาศ YouTube กับสตรีม หรือนำการเชื่อมโยงที่มีอยู่ระหว่างการออกอากาศกับสตรีมออก การออกอากาศจะเชื่อมโยงกับสตรีมวิดีโอได้ 1 รายการเท่านั้น แต่สตรีมวิดีโอจะเชื่อมโยงกับการออกอากาศมากกว่า 1 รายการได้ ลองใช้เลย
การเปลี่ยน
เปลี่ยนสถานะของการถ่ายทอดสดบน YouTube และเริ่มต้นกระบวนการที่เกี่ยวข้องกับสถานะใหม่ ตัวอย่างเช่น เมื่อคุณเปลี่ยนสถานะของการออกอากาศเป็น testing YouTube จะเริ่มส่งวิดีโอไปยังสตรีมจอภาพของการออกอากาศดังกล่าว ก่อนที่จะเรียกใช้เมธอดนี้ คุณควรยืนยันว่าค่าของพร็อพเพอร์ตี้ status.streamStatus สำหรับสตรีมที่ผูกกับการออกอากาศคือ active ลองเลย
จุดเริ่มโฆษณา
แทรกจุดเริ่มโฆษณาในการถ่ายทอดสด จุดเริ่มโฆษณาอาจทริกเกอร์ช่วงพักโฆษณา

การนำเสนอทรัพยากร

โครงสร้าง JSON ต่อไปนี้แสดงรูปแบบของทรัพยากร liveBroadcasts

{
  "kind": "youtube#liveBroadcast",
  "etag": etag,
  "id": string,
  "snippet": {
    "publishedAt": datetime,
    "channelId": string,
    "title": string,
    "description": string,
    "thumbnails": {
      (key): {
        "url": string,
        "width": unsigned integer,
        "height": unsigned integer
      }
    },
    "scheduledStartTime": datetime,
    "scheduledEndTime": datetime,
    "actualStartTime": datetime,
    "actualEndTime": datetime,
    "isDefaultBroadcast": boolean,
    "liveChatId": string
  },
  "status": {
    "lifeCycleStatus": string,
    "privacyStatus": string,
    "recordingStatus": string,
    "madeForKids": string,
    "selfDeclaredMadeForKids": string,
  },
  "contentDetails": {
    "boundStreamId": string,
    "boundStreamLastUpdateTimeMs": datetime,
    "monitorStream": {
      "enableMonitorStream": boolean,
      "broadcastStreamDelayMs": unsigned integer,
      "embedHtml": string
    },
    "enableEmbed": boolean,
    "enableDvr": boolean,
    "recordFromStart": boolean,
    "enableClosedCaptions": boolean,
    "closedCaptionsType": string,
    "projection": string,
    "enableLowLatency": boolean,
    "latencyPreference": boolean,
    "enableAutoStart": boolean,
    "enableAutoStop": boolean
  },
  "statistics": {
    "totalChatCount": unsigned long
  },
  "monetizationDetails": {
    "cuepointSchedule": {
      "enabled": boolean,
      "pauseAdsUntil": datetime,
      "scheduleStrategy": string,
      "repeatIntervalSecs": unsigned integer,
    }
  }
}

พร็อพเพอร์ตี้

ตารางต่อไปนี้จะกำหนดพร็อพเพอร์ตี้ที่ปรากฏในทรัพยากรนี้

พร็อพเพอร์ตี้
kind string
ระบุประเภทของทรัพยากร API ค่าจะเป็น youtube#liveBroadcast
etag etag
Etag ของทรัพยากรนี้
id string
รหัสที่ YouTube กำหนดเพื่อระบุการออกอากาศที่ไม่ซ้ำกัน
snippet object
ออบเจ็กต์ snippet มีรายละเอียดพื้นฐานเกี่ยวกับกิจกรรม ได้แก่ ชื่อ คำอธิบาย เวลาเริ่มต้น และเวลาสิ้นสุด
snippet.publishedAt datetime
วันที่และเวลาที่เพิ่มการออกอากาศลงในกำหนดการถ่ายทอดสดของ YouTube ค่านี้มีระบุไว้ในรูปแบบ ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ)
snippet.channelId string
รหัสที่ YouTube ใช้เพื่อระบุช่องที่เผยแพร่การออกอากาศโดยไม่ซ้ำกัน
snippet.title string
ชื่อการออกอากาศ โปรดทราบว่าการออกอากาศแสดงถึงวิดีโอ YouTube รายการเดียว คุณสามารถตั้งค่าช่องนี้โดยการแก้ไขทรัพยากรการออกอากาศหรือโดยการตั้งค่าช่อง title ของทรัพยากรวิดีโอที่เกี่ยวข้อง
snippet.description string
คำอธิบายของการออกอากาศ เช่นเดียวกับ title คุณสามารถตั้งค่าช่องนี้โดยแก้ไขทรัพยากรการออกอากาศหรือโดยการตั้งค่าช่อง description ของทรัพยากรวิดีโอที่สอดคล้องกัน
snippet.thumbnails object
แผนที่ภาพขนาดย่อที่เชื่อมโยงกับการออกอากาศ สำหรับออบเจ็กต์ที่ฝังแต่ละชิ้นในออบเจ็กต์นี้ คีย์คือชื่อของภาพขนาดย่อ และค่าคือออบเจ็กต์ที่มีข้อมูลอื่นๆ เกี่ยวกับภาพขนาดย่อ
snippet.thumbnails.(key) object
ค่าคีย์ที่ถูกต้องคือ
  • default – ภาพขนาดย่อเริ่มต้น ภาพขนาดย่อเริ่มต้นสำหรับวิดีโอหรือทรัพยากรที่อ้างอิงวิดีโอ เช่น รายการเพลย์ลิสต์หรือผลการค้นหา จะกว้าง 120px และสูง 90px ภาพขนาดย่อเริ่มต้นของช่องคือกว้าง 88 พิกเซลและสูง 88 พิกเซล
  • medium – ภาพขนาดย่อเวอร์ชันความละเอียดสูงกว่า สำหรับวิดีโอ (หรือทรัพยากรที่อ้างถึงวิดีโอ) รูปภาพนี้จะกว้าง 320px และสูง 180px สำหรับช่อง รูปภาพนี้กว้าง 240 พิกเซลและสูง 240 พิกเซล
  • high – ภาพขนาดย่อเวอร์ชันความละเอียดสูง สำหรับวิดีโอ (หรือทรัพยากรที่อ้างถึงวิดีโอ) รูปภาพนี้จะกว้าง 480 พิกเซล และสูง 360 พิกเซล สำหรับช่อง รูปภาพนี้กว้าง 800 พิกเซล และสูง 800 พิกเซล
snippet.thumbnails.(key).url string
URL ของรูปภาพ
snippet.thumbnails.(key).width unsigned integer
ความกว้างของรูปภาพ
snippet.thumbnails.(key).height unsigned integer
ความสูงของรูปภาพ
snippet.scheduledStartTime datetime
วันที่และเวลาที่กำหนดให้การออกอากาศเริ่มต้น ค่านี้มีระบุไว้ในรูปแบบ ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) Creator Studio รองรับการสร้างการออกอากาศโดยไม่ต้องกำหนดเวลาเริ่มต้น ในกรณีนี้ การออกอากาศจะเริ่มต้นเมื่อเจ้าของช่องเริ่มสตรีมมิง สำหรับการออกอากาศเหล่านี้ ค่า datetime จะสอดคล้องกับเวลาของ UNIX และไม่สามารถเปลี่ยนแปลงค่านี้ผ่าน API หรือใน Creator Studio ได้
snippet.scheduledEndTime datetime
วันที่และเวลาที่กำหนดให้การออกอากาศสิ้นสุดลง ค่านี้มีระบุไว้ในรูปแบบ ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) หากทรัพยากร liveBroadcast ไม่ได้ระบุค่าสำหรับพร็อพเพอร์ตี้นี้ จะมีการกำหนดเวลาออกอากาศต่อไปโดยไม่มีกำหนด ในทำนองเดียวกัน หากคุณไม่ระบุค่าสำหรับพร็อพเพอร์ตี้นี้ YouTube จะถือว่าการออกอากาศจะดำเนินไปอย่างไม่มีกำหนด
snippet.actualStartTime datetime
วันที่และเวลาที่เริ่มออกอากาศจริง ข้อมูลนี้จะพร้อมใช้งานเมื่อการออกอากาศมีสถานะเป็น live เท่านั้น ค่านี้มีระบุไว้ในรูปแบบ ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ)
snippet.actualEndTime datetime
วันที่และเวลาที่การออกอากาศสิ้นสุดลงจริงๆ ข้อมูลนี้จะพร้อมใช้งานเมื่อการออกอากาศมีสถานะเป็น complete เท่านั้น ค่านี้มีระบุไว้ในรูปแบบ ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ)
snippet.isDefaultBroadcast boolean
เราจะเลิกใช้งานพร็อพเพอร์ตี้นี้ในวันที่ 1 กันยายน 2020 เป็นต้นไป เมื่อช่องเปิดใช้สตรีมมิงแบบสดแล้ว YouTube จะหยุดสร้างสตรีมเริ่มต้นและการออกอากาศเริ่มต้น โปรดดูรายละเอียดเพิ่มเติมที่ประกาศการเลิกใช้งาน
คุณสมบัตินี้ระบุว่าการออกอากาศนี้เป็นการออกอากาศเริ่มต้นหรือไม่

วิธีการทำงานของการออกอากาศเริ่มต้น

เมื่อช่อง YouTube เปิดใช้สตรีมมิงแบบสด YouTube จะสร้างสตรีมเริ่มต้นและการออกอากาศเริ่มต้นสำหรับช่อง สตรีมจะกำหนดวิธีที่เจ้าของช่องส่งวิดีโอสดไปยัง YouTube และการออกอากาศเป็นวิธีที่ผู้ชมจะเห็นสตรีมเริ่มต้น เจ้าของช่องสามารถใช้เมธอด liveStreams.list และ liveBroadcasts.list เพื่อระบุทรัพยากรเหล่านี้ได้

เมื่อช่องเริ่มสตรีมวิดีโอไปยังสตรีมเริ่มต้น วิดีโอจะปรากฏในการออกอากาศเริ่มต้นของช่อง เมื่อสตรีมจบลง YouTube จะแปลงวิดีโอที่ออกอากาศเสร็จสมบูรณ์เป็นวิดีโอ YouTube และกำหนดรหัสวิดีโอ YouTube ให้กับวิดีโอ

หลังจากการแปลงเสร็จสมบูรณ์ วิดีโอจะรวมอยู่ในรายการวิดีโอที่อัปโหลดของช่อง วิดีโอจะไม่พร้อมใช้งานทันทีหลังจบการออกอากาศ และระยะหน่วงเวลาจะสัมพันธ์กับความยาวจริงของการออกอากาศ
snippet.liveChatId string
รหัสแชทสดของ YouTube ของการออกอากาศ เมื่อใช้รหัส คุณจะใช้เมธอดของทรัพยากร liveChatMessage เพื่อเรียกข้อมูล แทรก หรือลบข้อความแชทได้ คุณยังสามารถเพิ่มหรือนำผู้ดูแลแชทออก แบนผู้ใช้ไม่ให้เข้าร่วมแชทสด หรือยกเลิกการแบนที่มีอยู่ได้
status object
ออบเจ็กต์ status มีข้อมูลเกี่ยวกับสถานะของเหตุการณ์
status.lifeCycleStatus string
สถานะของการออกอากาศ คุณอัปเดตสถานะได้โดยใช้เมธอด liveBroadcasts.transition ของ API

ค่าที่ถูกต้องสำหรับพร็อพเพอร์ตี้นี้ ได้แก่
  • complete – การออกอากาศเสร็จสิ้นแล้ว
  • created – การออกอากาศมีการตั้งค่าที่ไม่สมบูรณ์ จึงยังไม่พร้อมที่จะเปลี่ยนสถานะเป็น live หรือ testing แต่การออกอากาศถูกสร้างขึ้นแล้วและใช้งานได้
  • live – การออกอากาศกำลังดำเนินอยู่
  • liveStarting – การออกอากาศกำลังอยู่ระหว่างการเปลี่ยนสถานะเป็น live
  • ready – การตั้งค่าการออกอากาศเสร็จสมบูรณ์และการออกอากาศจะเปลี่ยนเป็นสถานะ live หรือ testing ได้
  • revoked – ผู้ดูแลระบบดำเนินการนำการออกอากาศนี้ออก
  • testStarting – การออกอากาศกำลังอยู่ระหว่างการเปลี่ยนสถานะเป็น testing
  • testing – เฉพาะพาร์ทเนอร์เท่านั้นที่จะมองเห็นการแพร่ภาพ
status.privacyStatus string
สถานะความเป็นส่วนตัวของการออกอากาศ โปรดทราบว่าการออกอากาศแสดงถึงวิดีโอ YouTube รายการเดียว ดังนั้นการตั้งค่าความเป็นส่วนตัวจะเหมือนกับการตั้งค่าความเป็นส่วนตัวที่รองรับสำหรับวิดีโอ นอกจากนี้ คุณยังตั้งค่าช่องนี้ได้โดยแก้ไขทรัพยากรการออกอากาศหรือตั้งค่าช่อง privacyStatus ของทรัพยากรวิดีโอที่เกี่ยวข้อง

ค่าที่ถูกต้องสำหรับพร็อพเพอร์ตี้นี้ ได้แก่
  • private
  • public
  • unlisted
status.recordingStatus string
สถานะการบันทึกการออกอากาศ

ค่าที่ถูกต้องสำหรับพร็อพเพอร์ตี้นี้มีดังนี้
  • notRecording
  • recorded
  • recording
status.madeForKids boolean
ค่านี้ระบุว่าการแพร่ภาพดังกล่าวมีเด็กเป็นกลุ่มเป้าหมายหรือไม่ ค่าพร็อพเพอร์ตี้นี้เป็นแบบอ่านอย่างเดียว
status.selfDeclaredMadeForKids boolean
ในคำขอ liveBroadcasts.insert พร็อพเพอร์ตี้นี้ช่วยให้เจ้าของช่องกำหนดการออกอากาศว่ามีเด็กเป็นกลุ่มเป้าหมายได้ ในคำขอ liveBroadcasts.list ระบบจะแสดงผลค่าพร็อพเพอร์ตี้เมื่อเจ้าของช่องให้สิทธิ์คำขอ API เท่านั้น
contentDetails object
ออบเจ็กต์ contentDetails มีข้อมูลเกี่ยวกับเนื้อหาวิดีโอของเหตุการณ์ เช่น สามารถแสดงเนื้อหานี้ในโปรแกรมเล่นวิดีโอแบบฝังได้หรือไม่ หรือจะเก็บไว้ดูหลังจากกิจกรรมสิ้นสุดลงได้หรือไม่
contentDetails.boundStreamId string
ค่านี้ระบุถึง live stream ที่เชื่อมโยงกับการออกอากาศโดยไม่ซ้ำกัน
contentDetails.boundStreamLastUpdateTimeMs datetime
อัปเดตวันที่และเวลาที่สตรีมแบบสดที่ boundStreamId อ้างอิงครั้งล่าสุด
contentDetails.monitorStream object
ออบเจ็กต์ monitorStream มีข้อมูลเกี่ยวกับสตรีมการตรวจสอบ ซึ่งผู้เผยแพร่สามารถใช้เพื่อตรวจสอบเนื้อหากิจกรรมก่อนที่สตรีมการออกอากาศจะแสดงต่อสาธารณะ
contentDetails.monitorStream.enableMonitorStream boolean
ค่านี้จะกำหนดว่าสตรีมการตรวจสอบเปิดใช้สำหรับการออกอากาศหรือไม่ หากมีการเปิดใช้สตรีมมอนิเตอร์ YouTube จะออกอากาศเนื้อหากิจกรรมในสตรีมพิเศษที่มีไว้สำหรับการรับชมของผู้ออกอากาศเท่านั้น ผู้ออกอากาศสามารถใช้สตรีมเพื่อตรวจสอบเนื้อหาของเหตุการณ์และระบุเวลาที่เหมาะสมที่สุดในการแทรกจุดเริ่มโฆษณา

คุณต้องกำหนดค่านี้เป็น true หากต้องการให้มีระยะ testing สำหรับการออกอากาศ หรือหากต้องการให้มีความล่าช้าในการออกอากาศสำหรับกิจกรรม นอกจากนี้ หากค่าของคุณสมบัตินี้คือ true คุณต้องเปลี่ยนการกระจายข้อมูลเป็นสถานะ testing ก่อนจึงจะเปลี่ยนเป็นสถานะ live ได้ (หากค่าของคุณสมบัติคือ false การออกอากาศจะมีระยะ testing ไม่ได้ ดังนั้นคุณจึงเปลี่ยนการออกอากาศเป็นสถานะ live ได้โดยตรง)

เมื่อคุณupdate a broadcast คุณต้องตั้งค่าพร็อพเพอร์ตี้นี้หากคำขอ API รวมส่วน contentDetails ในค่าพารามิเตอร์ part แต่เมื่อคุณinsert a broadcast พร็อพเพอร์ตี้จะเป็นแบบไม่บังคับและมีค่าเริ่มต้นเป็น true

ข้อสำคัญ: อัปเดตพร็อพเพอร์ตี้นี้ไม่ได้เมื่อการออกอากาศอยู่ในสถานะ testing หรือ live
contentDetails.monitorStream.broadcastStreamDelayMs unsigned integer
หากคุณตั้งค่าพร็อพเพอร์ตี้ enableMonitorStream เป็น true พร็อพเพอร์ตี้นี้จะกำหนดระยะเวลาล่าช้าของการถ่ายทอดสด

เมื่อคุณupdate a broadcast คุณต้องตั้งค่าพร็อพเพอร์ตี้นี้หากคำขอ API รวมส่วน contentDetails ในค่าพารามิเตอร์ part แต่เมื่อคุณinsert a broadcast พร็อพเพอร์ตี้จะเป็นแบบไม่บังคับและมีค่าเริ่มต้นเป็น 0 ค่านี้ระบุว่าการออกอากาศไม่มีความล่าช้าของการออกอากาศ หมายเหตุ: ไม่สามารถอัปเดตพร็อพเพอร์ตี้นี้ได้เมื่อการแพร่ภาพอยู่ในสถานะ testing หรือ live
contentDetails.monitorStream.embedHtml string
โค้ด HTML ที่ฝังโปรแกรมเล่นที่เล่นสตรีมจอภาพ
contentDetails.enableEmbed boolean
การตั้งค่านี้ระบุว่าวิดีโอออกอากาศสามารถเล่นในโปรแกรมเล่นแบบฝังได้หรือไม่ หากคุณเลือกที่จะเก็บวิดีโอ (โดยใช้พร็อพเพอร์ตี้ enableArchive) การตั้งค่านี้จะมีผลกับวิดีโอที่เก็บถาวรด้วย

เมื่อคุณupdate a broadcast คุณต้องตั้งค่าพร็อพเพอร์ตี้นี้หากคำขอ API รวมส่วน contentDetails ในค่าพารามิเตอร์ part แต่เมื่อคุณinsert a broadcast พร็อพเพอร์ตี้จะเป็นแบบไม่บังคับและมีค่าเริ่มต้นเป็น true

หมายเหตุ: อัปเดตพร็อพเพอร์ตี้นี้ไม่ได้หากการออกอากาศอยู่ในสถานะ testing หรือ live
contentDetails.enableDvr boolean
การตั้งค่านี้จะกำหนดว่าผู้ชมจะเข้าถึงการควบคุม DVR ขณะดูวิดีโอได้หรือไม่ การควบคุม DVR ช่วยให้ผู้ชมควบคุมประสบการณ์ในการเล่นวิดีโอได้โดยการหยุดเนื้อหาชั่วคราว กรอกลับ หรือกรอไปข้างหน้า ค่าเริ่มต้นของพร็อพเพอร์ตี้นี้คือ true

เมื่อคุณupdate a broadcast คุณต้องตั้งค่าพร็อพเพอร์ตี้นี้หากคำขอ API รวมส่วน contentDetails ในค่าพารามิเตอร์ part แต่เมื่อคุณinsert a broadcast พร็อพเพอร์ตี้จะเป็นแบบไม่บังคับและมีค่าเริ่มต้นเป็น true

ข้อสำคัญ: คุณต้องตั้งค่าเป็น true และตั้งค่าพร็อพเพอร์ตี้ enableArchive เป็น true ทันทีหากต้องการให้การออกอากาศเล่นจบทันที นอกจากนี้ คุณสมบัตินี้ไม่สามารถอัปเดตได้เมื่อการออกอากาศอยู่ในสถานะ testing หรือ live
contentDetails.recordFromStart boolean
การตั้งค่านี้จะระบุว่า YouTube จะเริ่มบันทึกการถ่ายทอดสดโดยอัตโนมัติหลังจากที่กิจกรรมเปลี่ยนสถานะเป็นการถ่ายทอดสดหรือไม่

ค่าเริ่มต้นของพร็อพเพอร์ตี้นี้คือ true และจะตั้งค่าเป็น false ได้ก็ต่อเมื่อช่องออกอากาศได้รับอนุญาตให้ปิดใช้การบันทึกสำหรับการถ่ายทอดสด

หากช่องไม่มีสิทธิ์ปิดใช้การบันทึก และคุณพยายามแทรกการออกอากาศด้วยการตั้งค่าพร็อพเพอร์ตี้ recordFromStart เป็น false API จะแสดงข้อผิดพลาด Forbidden นอกจากนี้ หากช่องของคุณไม่มีสิทธิ์ดังกล่าวและคุณพยายามอัปเดตการออกอากาศเพื่อตั้งค่าพร็อพเพอร์ตี้ recordFromStart เป็น false API จะแสดงข้อผิดพลาด modificationNotAllowed

เมื่อคุณupdate a broadcast คุณต้องตั้งค่าพร็อพเพอร์ตี้นี้หากคำขอ API รวมส่วน contentDetails ในค่าพารามิเตอร์ part แต่เมื่อคุณinsert a broadcast พร็อพเพอร์ตี้จะเป็นแบบไม่บังคับและมีค่าเริ่มต้นเป็น true

สำคัญ: คุณต้องตั้งค่าพร็อพเพอร์ตี้ enableDvr เป็น true ด้วยหากต้องการให้การเล่นเล่นทันทีหลังจากที่การออกอากาศสิ้นสุดลง หากคุณตั้งค่าของพร็อพเพอร์ตี้นี้เป็น true แต่ไม่ได้ตั้งค่าพร็อพเพอร์ตี้ enableDvr เป็น true ด้วยอาจมีความล่าช้าประมาณ 1 วันก่อนที่วิดีโอที่เก็บถาวรจะเล่นได้

หมายเหตุ: อัปเดตพร็อพเพอร์ตี้นี้ไม่ได้หากการออกอากาศอยู่ในสถานะ testing หรือ live
contentDetails.enableClosedCaptions boolean
พร็อพเพอร์ตี้นี้เลิกใช้งานแล้วตั้งแต่วันที่ 17 ธันวาคม 2015 ให้ใช้คุณสมบัติ contentDetails.closedCaptionsType แทน

การตั้งค่านี้จะระบุว่ามีการเปิดใช้คำบรรยาย HTTP POST สำหรับการออกอากาศนี้หรือไม่ สำหรับไคลเอ็นต์ API ที่ใช้คุณสมบัตินี้อยู่แล้ว:
  • การตั้งค่าพร็อพเพอร์ตี้เป็น true เทียบเท่ากับการตั้งค่าพร็อพเพอร์ตี้ contentDetails.closedCaptionsType เป็น closedCaptionsHttpPost
  • การตั้งค่าพร็อพเพอร์ตี้เป็น false เทียบเท่ากับการตั้งค่าพร็อพเพอร์ตี้ contentDetails.closedCaptionsType เป็น closedCaptionsDisabled
contentDetails.closedCaptionsType string
หมายเหตุ: พร็อพเพอร์ตี้นี้มาแทนที่พร็อพเพอร์ตี้ contentDetails.enableClosedCaptions

พร็อพเพอร์ตี้นี้จะระบุว่าเปิดใช้คำบรรยายสำหรับการออกอากาศหรือไม่ และหากเปิดอยู่ คุณจะให้คำบรรยายประเภทใด
  • closedCaptionsDisabled: คำบรรยายถูกปิดใช้สำหรับการถ่ายทอดสด
  • closedCaptionsHttpPost: คุณจะส่งคำบรรยายไปยัง URL การส่งผ่านข้อมูลที่เชื่อมโยงกับสตรีมแบบสดผ่านทาง HTTP POST
  • closedCaptionsEmbedded: คำบรรยายจะเข้ารหัสในสตรีมวิดีโอโดยใช้รูปแบบ EIA-608 และ/หรือ CEA-708
contentDetails.projection string
รูปแบบการฉายภาพของการออกอากาศนี้ ค่าเริ่มต้นของพร็อพเพอร์ตี้คือ rectangular

ค่าที่ถูกต้องสำหรับพร็อพเพอร์ตี้นี้มีดังนี้
  • 360
  • rectangular
contentDetails.enableLowLatency boolean
ระบุว่าควรเข้ารหัสการออกอากาศนี้สำหรับสตรีมมิงที่มีเวลาในการตอบสนองต่ำหรือไม่ สตรีมที่มีเวลาในการตอบสนองต่ำสามารถลดระยะเวลาที่ต้องใช้ในการแสดงวิดีโอแก่ผู้ใช้ที่รับชม แต่ก็อาจส่งผลกระทบต่อความละเอียดของผู้ชมสตรีมได้ด้วยเช่นกัน
contentDetails.latencyPreference string
ระบุการตั้งค่าเวลาในการตอบสนองที่จะใช้สำหรับการออกอากาศนี้ พร็อพเพอร์ตี้นี้ใช้แทน enableLowLatency ซึ่งไม่รองรับ ultraLow ได้

สตรีมที่มีเวลาในการตอบสนองต่ำสามารถลดระยะเวลาที่ต้องใช้ในการแสดงวิดีโอต่อผู้ใช้ที่รับชม แต่ก็อาจส่งผลต่อความลื่นไหลในการเล่นได้เช่นกัน

สตรีมที่มีเวลาในการตอบสนองต่ำมากจะลดระยะเวลาการแสดงวิดีโอต่อผู้ชม ซึ่งทำให้การโต้ตอบกับผู้ชมง่ายขึ้น แต่มีเวลาในการตอบสนองต่ำมาก
จะไม่รองรับความละเอียดในการเล่นที่สูงขึ้น

สตรีมที่มีเวลาในการตอบสนองต่ำมากจะลดระยะเวลาการแสดงวิดีโอต่อผู้ชม ซึ่งทำให้การโต้ตอบกับผู้ชมง่ายขึ้น แต่มีเวลาในการตอบสนองต่ำมาก
  • normal
  • low
  • ultraLow
contentDetails.enableAutoStart boolean
ระบุว่าการออกอากาศนี้ควรเริ่มต้นโดยอัตโนมัติเมื่อคุณเริ่มสตรีมวิดีโอในขอบเขต live stream หรือไม่
contentDetails.enableAutoStop boolean
ระบุว่าการออกอากาศนี้ควรหยุดโดยอัตโนมัติประมาณ 1 นาทีหลังจากที่เจ้าของช่องหยุดสตรีมวิดีโอในสตรีมวิดีโอที่เชื่อมโยงหรือไม่
statistics object
ออบเจ็กต์ statistics มีสถิติที่เกี่ยวข้องกับการถ่ายทอดสด ค่าสำหรับสถิติเหล่านี้สามารถเปลี่ยนแปลงได้ในระหว่างการออกอากาศ และจะสามารถเรียกดูได้ในขณะที่ถ่ายทอดสดเท่านั้น
statistics.totalChatCount unsigned long
จำนวนข้อความแชทสดทั้งหมดที่เชื่อมโยงกับการออกอากาศ พร็อพเพอร์ตี้และค่าจะปรากฏขึ้นหากผู้ใช้มองเห็นการออกอากาศ เปิดใช้ฟีเจอร์แชทสด และมีข้อความอย่างน้อย 1 ข้อความ โปรดทราบว่าคุณสมบัตินี้จะไม่ระบุค่าหลังจากที่การออกอากาศสิ้นสุดลง ดังนั้นพร็อพเพอร์ตี้นี้จะไม่แสดงจำนวนข้อความแชทของวิดีโอที่เก็บถาวรของการถ่ายทอดสดที่เสร็จสมบูรณ์
monetizationDetails object
ออบเจ็กต์ monetizationDetails มีข้อมูลเกี่ยวกับรายละเอียดการสร้างรายได้ของสตรีม เช่น การเปิดใช้เครื่องมือสร้างโฆษณาอัตโนมัติหรือการแทรกโฆษณาตอนกลางล่าช้าหรือไม่

monetizationDetails.cuepointSchedule object
ออบเจ็กต์ cuepointSchedule จะระบุการตั้งค่าโฆษณาอัตโนมัติสำหรับการออกอากาศ
monetizationDetails.cuepointSchedule.enabled boolean
ค่านี้จะกำหนดว่าจะมีการแทรกโฆษณาในการออกอากาศโดยอัตโนมัติหรือไม่ หากค่าเป็น true YouTube จะแทรกโฆษณาตอนกลางในการออกอากาศโดยอัตโนมัติ กำหนดเวลาในการแสดงโฆษณาจะกำหนดโดยค่าของช่องอื่นๆ ในออบเจ็กต์ monetizationDetails.cuepointSchedule
monetizationDetails.cuepointSchedule.pauseAdsUntil datetime
ค่านี้ระบุว่า YouTube ไม่ควรแทรกโฆษณาตอนกลางในการออกอากาศจนกว่าจะถึงวันที่และเวลาที่ระบุไว้ ค่าจะระบุไว้ในรูปแบบ ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) ค่านี้ต้องกำหนดเป็นวันที่และเวลาในอนาคตเพื่อหยุดโฆษณาชั่วคราว และค่าในช่องจะตั้งค่าเป็นเวลาวันที่ใกล้ในอนาคตเพื่อยกเลิกการหยุดโฆษณาชั่วคราวเมื่อเวลาผ่านไปก็ได้
monetizationDetails.cuepointSchedule.scheduleStrategy string
ค่านี้ระบุกลยุทธ์ที่ YouTube ควรปฏิบัติตามสำหรับการกำหนดเวลาจุดเริ่มโฆษณา ค่าที่ถูกต้องมีดังนี้
  • CONCURRENT: กำหนดจุดเริ่มโฆษณาสำหรับผู้ชมทุกคนพร้อมกัน
  • NON_CONCURRENT: กำหนดจุดเริ่มโฆษณาในเวลาที่แตกต่างกันสำหรับผู้ชมกลุ่มต่างๆ วิธีนี้ช่วยให้โฆษณาแสดงในอัตราที่เพิ่มขึ้นซึ่งทำให้ผู้ชมได้รับจุดเริ่มโฆษณาเมื่อมีสิทธิ์
monetizationDetails.cuepointSchedule.repeatIntervalSecs unsigned integer
ค่านี้จะระบุช่วงเวลาเป็นวินาทีระหว่างการแทรกโฆษณาอัตโนมัติในระหว่างการออกอากาศ เช่น หากค่าคือ 300 YouTube จะแทรกจุดเริ่มโฆษณาของโฆษณาตอนกลางในช่วงเวลา 5 นาทีได้

โปรดทราบว่าค่าจะระบุเวลาระหว่างจุดเริ่มต้นของจุดเริ่มโฆษณาต่อเนื่อง กล่าวคือ ช่วงเวลาจะไม่วัดจากจุดสิ้นสุดของจุดเริ่มโฆษณา 1 จุดไปจนถึงจุดเริ่มต้นของจุดเริ่มโฆษณาถัดไป