มันทำอะไร
คุณสมบัติ
ภาพหน้าจอ
การติดตั้ง
ยกเลิกการจู่โจม
ปอร์เทนเนอร์
นักเทียบท่า
ตัวแปรสภาพแวดล้อม
ชื่อผู้ใช้และรหัสผ่าน (การตรวจสอบ)
คำถามที่พบบ่อย
เอกสารประกอบ
การบริจาคของเอฟเอฟ
ข้อสงวนสิทธิ์ก่อนเผยแพร่
การพัฒนาและการมีส่วนร่วม
Pinchflat เป็นแอปที่โฮสต์เองสำหรับการดาวน์โหลดเนื้อหา YouTube ที่สร้างโดยใช้ yt-dlp ออกแบบมาให้มีน้ำหนักเบา ครบเครื่อง และใช้งานง่าย คุณตั้งกฎสำหรับวิธีดาวน์โหลดเนื้อหาจากช่อง YouTube หรือเพลย์ลิสต์ จากนั้นระบบจะจัดการส่วนที่เหลือโดยตรวจสอบเนื้อหาใหม่เป็นระยะ เหมาะอย่างยิ่งสำหรับผู้ที่ต้องการดาวน์โหลดเนื้อหาเพื่อใช้กับแอปมีเดียเซ็นเตอร์ (Plex, Jellyfin, Kodi) หรือสำหรับผู้ที่ต้องการเก็บถาวรสื่อ!
แม้ว่าคุณจะสามารถดาวน์โหลดวิดีโอแต่ละรายการได้ แต่ Pinchflat เหมาะที่สุดสำหรับการดาวน์โหลดเนื้อหาจากช่องหรือเพลย์ลิสต์ มันไม่ได้มีไว้สำหรับการบริโภคเนื้อหาในแอป - Pinchflat ดาวน์โหลดเนื้อหาลงดิสก์ซึ่งคุณสามารถรับชมด้วยแอป Media Center หรือ VLC
หากใช้ไม่ได้กับกรณีการใช้งานของคุณ โปรดส่งคำขอคุณสมบัติ! คุณยังสามารถตรวจสอบทางเลือกที่ยอดเยี่ยมเหล่านี้ได้: Tube Archivist, ytdl-sub และ TubeSync
มีอยู่ในตัวเอง - มีเพียงคอนเทนเนอร์ Docker เดียวที่ไม่มีการพึ่งพาภายนอก
ระบบการตั้งชื่อที่มีประสิทธิภาพ เนื้อหาจึงถูกจัดเก็บไว้ที่ไหนและอย่างไรตามที่คุณต้องการ
เว็บอินเตอร์เฟสที่ใช้งานง่ายพร้อมการตั้งค่าล่วงหน้าเพื่อให้คุณเริ่มต้นได้ทันที
การสนับสนุนระดับเฟิร์สคลาสสำหรับแอป Media Center เช่น Plex, Jellyfin และ Kodi (เอกสาร)
รองรับการให้บริการฟีด RSS ไปยังแอพพอดแคสต์ที่คุณชื่นชอบ (เอกสาร)
ดาวน์โหลดเนื้อหาใหม่จากช่องและเพลย์ลิสต์โดยอัตโนมัติ
ใช้วิธีการใหม่ในการดาวน์โหลดเนื้อหาใหม่ได้เร็วกว่าแอปอื่นๆ
รองรับการดาวน์โหลดเนื้อหาเสียง
กฎที่กำหนดเองสำหรับการจัดการ YouTube Shorts และสตรีมแบบสด
ขอความช่วยเหลือจากการแจ้งเตือน
อนุญาตให้ดาวน์โหลดสื่อใหม่ซ้ำโดยอัตโนมัติหลังจากระยะเวลาที่กำหนด
ซึ่งสามารถช่วยปรับปรุงคุณภาพการดาวน์โหลดเนื้อหาใหม่หรือปรับปรุงแท็ก SponsorBlock
เลือกลบเนื้อหาเก่า (เอกสาร) โดยอัตโนมัติ
ตัวเลือกขั้นสูง เช่น การตั้งวันที่ตัดยอด และการกรองตามชื่อเรื่อง (เอกสาร)
การทำงานแบบแฮนด์ออฟที่เชื่อถือได้
สามารถส่งคุกกี้ไปยัง YouTube เพื่อดาวน์โหลดเพลย์ลิสต์ส่วนตัวของคุณ (เอกสาร)
การรวมสปอนซอร์บล็อค
[ขั้นสูง] อนุญาตตัวเลือก yt-dlp
ที่กำหนดเอง (เอกสาร)
[ขั้นสูง] รองรับการเรียกใช้สคริปต์แบบกำหนดเองหลังจากดาวน์โหลด/ลบสื่อ (อัลฟ่า - เอกสาร)
เพียงค้นหา Pinchflat ใน Community Apps store!
สำคัญ
ดูหมายเหตุด้านล่างเกี่ยวกับการจัดเก็บการกำหนดค่าในการแชร์ไฟล์เครือข่าย ขอแนะนำให้จัดเก็บการกำหนดค่าไว้ในดิสก์ภายในเครื่องหากเป็นไปได้
ไฟล์นักเทียบท่าเขียน:
รุ่น: '3'services: pinchflat: รูปภาพ: ghcr.io/kieraneglin/pinchflat: สภาพแวดล้อมล่าสุด: # ตั้งค่าเขตเวลาเป็นเขตเวลาท้องถิ่นของคุณ - TZ=พอร์ตอเมริกา/นิวยอร์ก: - เล่ม '8945:8945': - /host/path/to/config:/config - /host/path/to/downloads:/downloads
สร้างสองไดเร็กทอรีบนเครื่องโฮสต์ของคุณ: หนึ่งไดเร็กทอรีสำหรับจัดเก็บการกำหนดค่าและอีกไดเร็กทอรีสำหรับจัดเก็บสื่อที่ดาวน์โหลด ตรวจสอบให้แน่ใจว่าผู้ใช้ที่ใช้งานคอนเทนเนอร์ Docker สามารถเขียนได้ทั้งสองรายการ
เตรียมอิมเมจนักเทียบท่าด้วยวิธีใดวิธีหนึ่งจากสองวิธีด้านล่าง:
หมายเหตุ: มีให้ใช้งานบน Docker Hub ที่ keglin/pinchflat:latest
จาก GHCR: docker pull ghcr.io/kieraneglin/pinchflat:latest
สร้างในเครื่อง: docker build . --file docker/selfhosted.Dockerfile -t ghcr.io/kieraneglin/pinchflat:latest
เรียกใช้คอนเทนเนอร์:
# อย่าลืมแทนที่ /host/path/to/config และ /host/path/to/downloads ด้านล่างด้วย# เส้นทางไปยังไดเร็กทอรีที่คุณสร้างในขั้นตอนที่ 1# อย่าลืมแทนที่ America/New_York ด้วยการรัน timezonedocker ท้องถิ่นของคุณ -e TZ=อเมริกา/นิวยอร์ก -หน้า 8945:8945 -v /host/path/to/config:/config -v /host/path/to/downloads:/downloads ghcr.io/kieraneglin/pinchflat:ล่าสุด
คุณ ต้อง แน่ใจว่าไดเร็กทอรีโฮสต์ที่คุณติดตั้งนั้นสามารถเขียนได้โดยผู้ใช้ที่รันคอนเทนเนอร์ Docker หากคุณได้รับข้อผิดพลาดในการอนุญาต ให้ทำตามขั้นตอนที่แนะนำ ดูเพิ่มเติมที่ #106
สำคัญ
ไม่แนะนำให้รันคอนเทนเนอร์ในฐานะรูท การทำเช่นนี้สามารถสร้างปัญหาการอนุญาตได้หากแอพอื่นจำเป็นต้องทำงานกับสื่อที่ดาวน์โหลด
ตามที่ระบุไว้ใน #137 SQLite ไม่ชอบการทำงานในโหมด WAL บนเครือข่ายที่แชร์ หากคุณใช้ Pinchflat บนเครือข่ายที่ใช้ร่วมกัน คุณสามารถปิดใช้งานโหมด WAL ได้โดยตั้งค่าตัวแปรสภาพแวดล้อม JOURNAL_MODE
ให้ delete
ซึ่งจะทำให้ Pinchflat ทำงานในโหมดบันทึกย้อนกลับซึ่งมีประสิทธิภาพน้อยกว่า แต่ควรทำงานกับการแชร์เครือข่าย
คำเตือน
การเปลี่ยนการตั้งค่านี้จาก WAL เป็นการ delete
บนอินสแตนซ์ Pinchflat ที่มีอยู่อาจทำให้ข้อมูลสูญหายได้ เปลี่ยนการตั้งค่านี้เฉพาะเมื่อคุณรู้ว่าคุณกำลังทำอะไรอยู่ เหตุใดสิ่งนี้จึงสำคัญ และยอมรับได้ว่าข้อมูลอาจสูญหายหรือฐานข้อมูลเสียหายได้ สำรองฐานข้อมูลของคุณก่อน!
หากคุณเปลี่ยนการตั้งค่านี้และได้ผลดีสำหรับคุณ โปรดแสดงความคิดเห็นที่ #137! ทวีคูณถ้ามันทำงานได้ ไม่ ดี
ชื่อ | ที่จำเป็น? | ค่าเริ่มต้น | หมายเหตุ |
---|---|---|---|
TZ | เลขที่ | UTC | ต้องเป็นไปตามรูปแบบ IANA TZ |
LOG_LEVEL | เลขที่ | debug | สามารถตั้งค่าเป็น info ได้ แต่ขอแนะนำอย่างยิ่ง debug |
BASIC_AUTH_USERNAME | เลขที่ | ดูเอกสารการรับรองความถูกต้อง | |
BASIC_AUTH_PASSWORD | เลขที่ | ดูเอกสารการรับรองความถูกต้อง | |
EXPOSE_FEED_ENDPOINTS | เลขที่ | false | ดูเอกสารฟีด RSS |
ENABLE_IPV6 | เลขที่ | false | การตั้งค่าเป็น ค่า ที่ไม่เว้นว่างจะเปิดใช้งาน IPv6 |
JOURNAL_MODE | เลขที่ | wal | ตั้งค่าให้ delete หากไดเร็กทอรี config ของคุณถูกจัดเก็บไว้ในเครือข่ายที่ใช้ร่วมกัน (ไม่แนะนำ) |
TZ_DATA_DIR | เลขที่ | /etc/elixir_tzdata_data | เส้นทางคอนเทนเนอร์ที่เก็บฐานข้อมูลเขตเวลา |
BASE_ROUTE_PATH | เลขที่ | / | เส้นทางพื้นฐานสำหรับการสร้างเส้นทาง มีประโยชน์เมื่อทำงานอยู่เบื้องหลังพร็อกซีแบบย้อนกลับบางตัว แต่ต้องตัดคำนำหน้าออก |
YT_DLP_WORKER_CONCURRENCY | เลขที่ | 2 | จำนวนผู้ปฏิบัติงานพร้อมกันที่ใช้ yt-dlp ต่อคิว ตั้งค่าเป็น 1 หากคุณได้รับ IP ที่จำกัด ไม่เช่นนั้นก็อย่าแตะต้องมัน |
ก่อนวันที่ 10-05-2024 ส่วนหนึ่งของการบริจาคทั้งหมดจะมอบให้กับ Electronic Frontier Foundation ขณะนี้แอปไม่รับการบริจาคที่ส่งถึงฉันเป็นการส่วนตัว แต่จะนำคุณไปที่ EFF โดยตรงแทน ต่อไปนี้คือผู้บริจาคอย่างไม่เห็นแก่ตัว
EFF ปกป้องเสรีภาพออนไลน์ของคุณและสำรอง youtube-dl
เมื่อ Google ลบออก
ซอฟต์แวร์นี้อยู่ในระหว่างการพัฒนาและทุกสิ่งสามารถเสียหายได้ตลอดเวลา ฉันไม่รับประกันเกี่ยวกับความเสถียรของซอฟต์แวร์นี้ ความเข้ากันได้ในอนาคตของการอัปเดต หรือความสมบูรณ์ (ทั้งที่เกี่ยวข้องและไม่ขึ้นอยู่กับ Pinchflat)
ดูไฟล์ LICENSE