หน้าจอแสดงผลหลายหน้าจอ


16

ฉันต้องการสร้างระบบมัลติมีเดียขนาดเล็กตาม raspberry pi B + ซึ่งมีหน้าจอแสดงผล 2 หน้า:

  1. หน้าจอหลัก (เช่นทีวี LED 42 นิ้ว) ซึ่งเล่นวิดีโอหลักในแบบ Full HD
    • HDMI
    • อาร์ซีเอ / AV / คอมโพสิต
  2. หน้าจอควบคุมแบบสัมผัส (เช่น 3 ~ 8 "TFT / LCD / ... ) ซึ่งแสดงรายการวิดีโอที่มีอยู่รายละเอียดของวิดีโอที่กำลังเล่นอยู่บนหน้าจอหลักและตัวเลือกและไอคอนกราฟิกเพื่อเลือกวิดีโอที่คุณต้องการ ต้องการเล่นในหน้าจอทีวีหลัก

    • HDMI
    • อาร์ซีเอ / AV / คอมโพสิต
    • ยูเอสบี
    • GPIO (ขนานหรืออนุกรม)
    • ดีเอสไอ
    • . . . .

    ฉันค้นหาสิ่งนี้มากมายในฟอรัมต่างๆ บ่อยครั้งที่มีการตั้งข้อสังเกตว่าเมื่อเสียบสาย HDMI แล้ว RCA จะปิดการทำงานหรือในทางกลับกัน (เป็นจริงหรือไม่) สมมติว่าสิ่งนี้ถูกต้องจากนั้นตัวเลือกโปรโตคอลเท่านั้นสำหรับหน้าจอควบคุมคือ USB, GPIO และ DSI

ตอนนี้คำถามของฉันมีดังนี้

  1. เป็นไปได้หรือไม่ที่จะมี 2 เนื้อหาที่แสดงแตกต่างกันโดยใช้เพียง 1 raspberry pi B +?
  2. ถ้าใช่โปรโตคอลใดดีที่สุดสำหรับหน้าจอสัมผัสควบคุม (HDMI / RCA / USB / GPIO / DSI / ... )

    และฉันจะจัดการกับเนื้อหาที่แสดงพร้อมกันเหล่านี้ได้อย่างไร

  3. ถ้าไม่คุณแนะนำให้ฉันทำอะไร

    มีตัวเลือกอื่นนอกเหนือจากการใช้บอร์ด 2 raspberry pi B + หรือไม่?

ขอบคุณมากสำหรับเวลาและความช่วยเหลือ มันเป็นที่นิยมอย่างสูง


2
ในขณะที่คุณอนุมานได้ว่าถ้าคุณแนบหน้าจอที่สองกับสิ่งอื่นที่ไม่ใช่ HDMI หรือ RCA คุณควรจะใช้ทั้งคู่ สิ่งนี้ได้รับการยืนยันโดย raspberrypi.orgโดยใช้อะแดปเตอร์ VGA เสริมสำหรับรุ่น 40 พิน +
goldilocks

ขอบคุณ @goldilocks สำหรับความคิดเห็นของคุณ ฉันเห็นเกี่ยวกับอะแดปเตอร์ Gert VGA และสิ่งที่เกี่ยวข้อง แต่ข้อกังวลหลักของฉันคือ: ฉันจะจัดการหน้าจอทั้งสองนี้เพื่อแสดงเนื้อหาที่แตกต่างได้อย่างไร ฉันจะเริ่มได้ที่ไหน ขออภัยที่จะถามคำถามง่าย ๆ แต่ฉันยังใหม่กับ pi และ linux อย่างสมบูรณ์!
Omid1989

2
คุณจะไม่สามารถเริ่มต้นจนกว่าคุณจะตัดสินใจและมีสองหน้าจอจริง หลังจากนั้นก็ควรจะสวยเรียบง่าย แต่คำถามใด ๆ เกี่ยวกับเรื่องนี้จะเป็นคนทั่วไปและลินุกซ์เป็นของบนUnix และ Linux แลกเปลี่ยน หากคุณค้นหา "linux X จอภาพสองจอ" คุณจะพบสิ่งต่างๆ โดยค่าเริ่มต้นสิ่งที่อาจเกิดขึ้นคือคุณจะได้รับสิ่งเดียวกันทั้งสองหน้าจอ แต่ X สามารถกำหนดค่าให้ปฏิบัติต่อพวกเขาต่างกัน พวกเขาอาจมีหรือไม่มี framebuffers (ซึ่งอาจหรือไม่สำคัญขึ้นอยู่กับสิ่งที่คุณต้องการทำ)
goldilocks

ขอบคุณอีกครั้ง @goldilocks สำหรับความคิดเห็นที่เป็นประโยชน์ของคุณ คุณช่วยอธิบายสั้น ๆ เกี่ยวกับ "framebuffer" และ "X" ได้ไหม? ฉันได้ค้นหาเกี่ยวกับพวกเขาแล้ว แต่เพิ่งสับสน!
Omid1989

2
วิกิพีเดียมักจะทำงานได้ดีกับเนื้อหาประเภทนี้ X ยิ่งเซิร์ฟเวอร์ Xorgเป็นเลเยอร์พื้นฐานของเดสก์ท็อป GUI ปกติ ( lxdeทำงานบนนั้น) framebufferสามารถนำมาใช้ในการทำสิ่งกราฟิกด้านนอกของ X (เช่นในปี่ที่omxplayerใช้มัน) หากคุณต้องการเดสก์ท็อปสองหัวปกติคุณไม่จำเป็นต้องกังวลเกี่ยวกับเรื่องนี้
goldilocks

คำตอบ:


8

มูลนิธิ Raspberry Pi อ้างอย่างไม่น่าสงสัยว่าอะแดปเตอร์ VGA ในส่วนหัวของ GPIO "หมายความว่าคุณสามารถใช้เป็นจอแสดงผลรองข้าง HDMI" ( จากที่นี่ ) คุณควรจะทำสิ่งนี้ผ่าน USB ได้อย่างแน่นอน สำหรับหลักฐานของปี่รันหลายหัวดูความคิดเห็นด้านล่าง แน่นอนว่าข้อยกเว้นกำลังพยายามใช้ HDMI และวิดีโอ RCA พร้อมกัน ฉันเดาว่าข้อ จำกัด นี้เกี่ยวข้องกับ GPU เท่านั้นที่สามารถจัดการกับเอาต์พุตเดียวได้ วิดีโอ USB นั้นไม่สามารถใช้ GPU เป็นข้อสันนิษฐานได้ แต่อย่างหนึ่งฉันค่อนข้างแน่ใจ piTFT และหน้าจอสัมผัสที่ใช้ GPIO อื่น ๆ ไม่สามารถใช้งานได้โดยตรง นี่เป็นเรื่องที่ดีถ้าคุณต้องการหัวคู่เนื่องจากมันควรจะมีระบบวิดีโอสองระบบที่แยกจากกันอย่างสมบูรณ์และ linux จะนำมันมาจากที่นั่น

หากคุณเรียกใช้สองจอแสดงผลภายใต้ X หน้าจอเหล่านั้นอาจถูกมิร์เรอร์ตามค่าเริ่มต้น ฉันไม่แน่ใจเกี่ยวกับความเป็นไปได้ในการใช้งาน X บนจอมอนิเตอร์หนึ่งตัวและแผงควบคุมเฟรมเฟรมที่อีกอันหนึ่ง แม้ว่าหลังเป็นไปได้อาจไม่สามารถใช้ได้กับการตั้งค่าทั้งหมด


ขอบคุณ @ goldilocks สำหรับคำตอบของคุณ ที่จริงแล้วฉันได้พบคำตอบสำหรับคำถามของฉันในฟอรัมทางการของราสเบอร์รี่ Pi บางคนเคยทำมาก่อนแม้กระทั่งใน 3 จอภาพโดยการแก้ไขเคอร์เนลก่อนแล้วจึงสร้างเฟรมเฟรม 3 รายการ ข้อมูลเพิ่มเติมสามารถดูได้ที่นี่: raspberrypi.org/forums/viewtopic.php?p=661085#p661085
Omid1989

1
ขอขอบคุณที่คุณ - ฉันอาจจะสามารถใช้เพื่อยืนยันสมมติฐานบางส่วนของอื่น ๆ ของฉันข้างต้น ฉันเพิ่มบางส่วนเพราะมีคนถามคำถามที่คล้ายกับคำถามนี้ซึ่งฉันเปลี่ยนเส้นทางที่นี่เนื่องจากตามปรัชญาของ SE เราไม่ต้องการ 15 คำถามและคำตอบที่แตกต่างกันเกี่ยวกับสิ่งเดียวกันมากขึ้นหรือน้อยลง ") นอกจากนี้คุณยังสามารถตอบคำถามโดยละเอียดหากคุณต้องการ / เมื่อคุณได้รับสิ่งนี้
goldilocks

แม้ว่าฉันจะอ่านหัวข้อนั้นในฟอรัมทางการของ raspberry pi แต่ฉันไม่เข้าใจคำตอบทั้งหมดเพราะฉันไม่ค่อยคุ้นเคยกับคำเช่น kernel, framebuffer ฯลฯ ดังนั้นฉันจะขอบคุณถ้าคุณสรุปคำตอบนั้นและโพสต์ การสอนทีละขั้นตอนที่นี่; เพื่อให้ฉันสามารถเลือกเป็นคำตอบที่ดีที่สุดที่นี่ ขอบคุณพันล้านสำหรับเวลาของคุณและช่วย @ goldilocks ฉันซาบซึ้งจริงๆ
Omid1989

@ goldilocks และฉันจะเปลี่ยนจากหน้าจอ lcd เป็น hdmi ได้อย่างไร (ไม่บังคับให้ใช้ในเวลาเดียวกัน) ฉันถามคำถามที่นี่
IonicăBizău

เรียน @ goldilocks ตอนนี้มูลนิธิ RaspberryPi ได้เปิดตัวหน้าจออย่างเป็นทางการแล้วในที่สุดเราอาจจะตอบคำถามที่ได้รับความนิยมได้ดีกว่านี้ มันอาจช่วยผู้ที่ชื่นชอบได้เป็นอย่างดี ฉันหวังว่าจะได้ยินจากคุณ.
Omid1989

0

OP ไม่ได้ให้ข้อมูลที่เพียงพอเกี่ยวกับซอฟต์แวร์ที่ใช้ในการเลือกวิดีโอเป็นต้นดังนั้นฉันสงสัยว่าความปรารถนาที่จะให้ X ทำงานบนหน้าจอสองหน้าพร้อมกัน ในกรณีนี้คำตอบคือไม่เท่าที่ฉันสามารถตรวจสอบได้

สำหรับฟังก์ชั่นหลายหน้าจออื่น ๆ นี่เป็นบทสรุปอย่างรวดเร็วของสิ่งที่ฉันได้ทำไปแล้ว:

1) ใน Rpi แรกที่มีหน้าจอสัมผัสขนาด 3.5 นิ้วฉันสามารถเชื่อมต่อหน้าจอ HDMI และใช้เป็นเทอร์มินัลแบบอักขระได้โดยกด Ctrl-Alt-F2 หน้าจอ 3.5 "ค้างและคุณสามารถทำคำสั่งทั้งหมดที่คุณต้องการบน HDMI โดยใช้แป้นพิมพ์และเมาส์เดียวกันกลับไปที่หน้าจอ 3.5" คุณกด Ctrl-Alt-F7

2) ใน Rpi อื่นของฉันฉันได้บูตเข้ากับ HDMI ใน X จากนั้นโดยใช้ PuTTY (ตัวอักษร) หรือ Remote Desktop (กราฟิก) หรือ TightVNC (กราฟิก) ฉันสามารถมีหน้าจอที่สองขึ้นมาและเรียกใช้ที่มองไม่เห็นบน HDMI แป้นพิมพ์และเมาส์ปกติทำงานบน HDMI ต่อไป ฉันใช้บลูทู ธ เพื่อรับเสียงเนื่องจากจอภาพเป็นแบบหน้าจอเท่านั้น

แป้นพิมพ์และเมาส์ของพีซีทำงานในโปรแกรมการเข้าถึงระยะไกล ที่ชื่นชอบที่สุดคือ Remote Desktop แต่ TightVNC ทำให้การถ่ายโอนไฟล์ง่ายขึ้น
ในทุกกรณีคุณอาจต้องการให้ FileZilla ทำงานเพื่อการถ่ายโอนโดยเฉพาะอย่างยิ่งหากพีซีควบคุมของคุณเป็นจอมอนิเตอร์คู่

เกี่ยวข้องกับคำถามของ OP วิธีเดียวที่ฉันค้นพบเพื่อควบคุม HDMI การบูตจากโปรแกรมการเข้าถึงระยะไกลคือผ่านฟังก์ชั่นกล้อง แต่มีข้อแม้

นี่คือ RUB: เมื่อใดก็ตามที่คุณใช้ฟังก์ชั่นกล้องเช่น raspivid, raspistill เป็นต้นมันจะแสดงบนเอาต์พุต HDMI เสมอ และมันยังไม่สุภาพพอที่จะแสดงแบบเต็มหน้าจอซึ่งหมายความว่าคุณยังสามารถเห็น X desktop ของคุณอยู่ด้านหลัง ดูเหมือนว่าจะพอดีกับจอแสดงผลจากบนลงล่างจากนั้นเมื่อฟังก์ชั่นกล้องสมบูรณ์ HDMI จะกลับไปที่เดสก์ท็อปหรือเป็นสีดำหากคุณใช้งานเกินเวลาปกติที่ว่างบนหน้าจอ

3) ฉันได้บูต Rpi อื่น ๆ ของฉันไปยังหน้าจอ 60 นิ้วเพื่อแสดงลูกเล่นบางอย่างกับครอบครัวและยอมรับความจริงที่ว่าพวกเขาเห็นฉันเรียกใช้ฟังก์ชั่น ฉันเปิดหน้าต่างเทอร์มินัลเล็ก ๆ ไว้ (ตรงกลางของหน้าจอเพื่อให้วิดีโอซ้อนทับอยู่ด้านบน) ไปยังที่ที่ฉันมีสคริปต์ทุบตีบางอย่างเพื่อออกคำสั่งใด ๆ ที่ฉันต้องการ (เช่นแสดงให้พวกเขาดู เซ็นเซอร์ตรวจจับการเคลื่อนไหวของกล้อง NoIR ติดตั้งที่สนามในตอนกลางคืน) และส่วนคำสั่งครอบคลุมเหนือหัว พวกเขาดูวิดีโอ

หากคุณกำลังใช้ส่วนต่อประสานกราฟิกกับโปรแกรมเลือกเพลงของคุณดีกว่าเยอะเพราะพวกเขาจะได้เห็นว่าคุณกำลังทำอะไรอยู่ จากนั้นพวกเขาสามารถทำอะไรเกี่ยวกับวิธีที่คุณสามารถสร้างคอมพิวเตอร์ขนาดเล็กเช่นนี้ทำสิ่งที่เป็นอัจฉริยะของคุณ

แต่สำหรับบรรทัดล่างที่เกี่ยวข้องกับคำถามฉันรู้สึกว่า OP กำลังคิดตามแนวของสภาพแวดล้อมการนำเสนอทางธุรกิจมากขึ้น ฉันส่งว่าในกรณีนั้นไม่มีสิ่งใดมาทดแทนโน้ตบุ๊คพีซีขนาดเล็กที่สามารถรองรับจอแสดงผลคู่ได้


0

เพิ่งค้นพบวิดีโอสั้น ๆ ที่แสดงให้เห็นว่าผู้ชายคนนี้สามารถรองรับจอภาพสองจอโดยเปลี่ยนสิ่งต่าง ๆ ในเคอร์เนลได้อย่างไร ฉันไม่สามารถแสดงความคิดเห็นในสิ่งนี้ได้นอกจากเพื่อลิสต์ลิงค์:

https://www.youtube.com/watch?v=dTcU5YSq-Ww


ยินดีต้อนรับสู่ราสเบอร์รี่ Pi! ในขณะที่สิ่งนี้อาจตอบคำถามในทางทฤษฎีมันก็ควรที่จะรวมส่วนสำคัญของคำตอบที่นี่และให้ลิงค์สำหรับการอ้างอิง
Steve Robillard

เข้าใจ มันเกินความเชี่ยวชาญของฉัน ยังเกี่ยวข้องกับ OP
SDsolar

หรือแทนที่จะวางความคิดเห็นเกี่ยวกับคำถามของ OP
Piotr Kula

0

มีวิธีหนึ่ง แต่คุณต้องใช้แรงงานเล็กน้อยสำหรับสิ่งนั้น มันได้รับการระบุไว้ที่เว็บไซต์อย่างเป็นทางการของ pi foundation ที่ omxplayer เหมาะสำหรับเอาท์พุทเสียงคู่ แต่คุณต้องทำจากบรรทัดคำสั่ง เพียงพิมพ์คำสั่งต่อไปนี้: omxplayer --display = 5 [FILE PATHNAME]

คำสั่งนี้จะให้คุณเล่นวิดีโอในช่องต่อ HDMI พร้อมกันโดยใช้หน้าจอสัมผัส


0

สิ่งนี้เป็นไปได้ถ้าคุณใช้เฟรมเวิร์ก Kivy คุณจะสามารถรหัส UI ของคุณในหลาม (สำหรับหน้าจอสัมผัส) แล้วเล่นวิดีโออย่างอิสระผ่านทางเอาต์พุต HDMI

สำหรับตัวอย่างที่พื้นฐานของโครงสร้างรหัสบน RPi3 อย่างเป็นทางการ 7" หน้าจอสัมผัสไปที่นี่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.