กลับไปที่ปัญหาของฉัน ffmpeg ของฉันไม่สามารถส่งสัญญาณเสียงโดยใช้ตัวแปลงสัญญาณ h.264 (libx264) กับเป้าหมายจากการ์ดจับภาพ USB UVC HDMI ปลายทางไปยังการสตรีม HLS ..
คำถามของฉัน :
- สเป็คคอมพิวเตอร์ของฉันไม่รองรับ? เราใช้แล็ปท็อป FIJUTSHU LIFEBOOK S710 ( i5 M520.RAM 8G, SSD 500GB, กล้องในตัว, การ์ดเสียง Intel และใช้การ์ดจับภาพ USB, OS Ubuntu 18.4
- เป็นเพราะการ์ดเสียงหลายตัว (ภายใน (intel) และการ์ดจับภาพ USB (กล้อง UVC (HDMI)) ดังนั้น ALSA จึงไม่สามารถระบุได้ว่าอินพุตเสียงมาจากไหน จะแก้ไขได้อย่างไร
- คำสั่งไวยากรณ์ hw:0 สำหรับอุปกรณ์ usb 0 หรือ hw:1 สำหรับอุปกรณ์ usb 1 ไม่ถูกต้อง จะแก้ไขได้อย่างไร
- อาจเป็นปัญหาจากไวยากรณ์ผิด วิธีแก้ไข
หากปัญหาจากสเป็คคอมพิวเตอร์ต่ำเกินไป ไม่ว่าจะเป็นการเพิ่มการ์ด NVIDIA GPU 1 ตัว, โดยการสั่ง ffmpeg โดยใช้ตัวเร่งทรัพยากรของการ์ด GPU เป็นตัวเข้ารหัส จะสามารถแก้ปัญหาของฉันได้หรือไม่ ?
ไวยากรณ์ที่ใช้:
ffmpeg -f alsa -channels 2 -sample_rate 44100 -i hw:1 -f video4linux2 -i /dev/video1 -c:a aac -b:a 128k -c:v libx264 -preset veryfast -b:v 4000k -maxrate 4000k -bufsize 12000k -g 10 -vf "scale=1280:720,format=yuv420p" -f flv rtmp://localhost/show/stream
อุปกรณ์ usb ของฉัน:
s710@sensorsip:~$ เล่น -l
**** รายชื่ออุปกรณ์ฮาร์ดแวร์ PLAYBACK ****
การ์ด 0: MID [HDA Intel MID], อุปกรณ์ 0: ALC269 อะนาล็อก [ALC269 อะนาล็อก]
อุปกรณ์ย่อย: 1/1
อุปกรณ์ย่อย #0: อุปกรณ์ย่อย #0
การ์ด 0: MID [HDA Intel MID], อุปกรณ์ 3: HDMI 0 [HDMI 0]
อุปกรณ์ย่อย: 1/1
อุปกรณ์ย่อย #0: อุปกรณ์ย่อย #0
การ์ด 0: MID [HDA Intel MID], อุปกรณ์ 7: HDMI 1 [HDMI 1]
อุปกรณ์ย่อย: 1/1
อุปกรณ์ย่อย #0: อุปกรณ์ย่อย #0
s710@sensorsip:~$ lsusb
บัส 002 อุปกรณ์ 005: ID 1690:0741 Askey Computer Corp. [ฐานสิบหก]
บัส 002 อุปกรณ์ 004: ID 0408:1322 Quanta Computer, Inc.
อุปกรณ์บัส 002 003: ID 08ff:2550 AuthenTec, Inc. AES2550 เซ็นเซอร์ลายนิ้วมือ
อุปกรณ์บัส 002 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
อุปกรณ์บัส 002 001: ID 1d6b:0002 รูตฮับ Linux Foundation 2.0
บัส 001 อุปกรณ์ 004: ID 534d:2109
บัส 001 อุปกรณ์ 003: ID 524d:2109
อุปกรณ์บัส 001 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
อุปกรณ์บัส 001 001: ID 1d6b:0002 รูทฮับ Linux Foundation 2.0
s710@sensorsip:~$
รหัสการ์ด usb คือ:
บัส 001 อุปกรณ์ 004: ID 534d:2109
บัส 001 อุปกรณ์ 003: ID 524d:2109
โปรดช่วยฉันและขอบคุณ
คริสเตียน ฮุง