วิธีรับป้ายกำกับเวลาเพื่อปิดเสียงในไฟล์เสียง


0

ฉันต้องการวิธีโดยอัตโนมัติ (ด้วยสคริปต์ Python) ค้นหาในออดิโอไฟล์ทุกที่ที่ไม่มีเสียง (เงียบ) และรับรายการพร้อมป้ายกำกับเวลาสำหรับสถานที่เหล่านั้น

ฉันสามารถรับรายการดังกล่าวด้วยความกล้า แต่ฉันไม่รู้ว่าจะทำอย่างไรจากสคริปต์

ฉันสามารถใช้ SoX ได้ ถ้าฉันใช้คำสั่งต่อไปนี้:

play someFile.mp3 silence -l 0 1 0.26t -54d : restart

จากนั้นฉันก็มีเอาต์พุตที่แน่นอนที่ฉันต้องการ:

In:0.04% 00:00:00.74 [00:29:29.08] Out:14.5k [      |      ]        Clip:0    
In:0.88% 00:00:15.60 [00:29:14.22] Out:341k  [      |      ]        Clip:0    
In:0.90% 00:00:15.98 [00:29:13.84] Out:349k  [      |      ]        Clip:0    
In:0.92% 00:00:16.35 [00:29:13.47] Out:356k  [      |      ]        Clip:0    
In:0.94% 00:00:16.72 [00:29:13.10] Out:363k  [      |      ]        Clip:0    
In:0.97% 00:00:17.09 [00:29:12.73] Out:369k  [      |      ]        Clip:0    
In:1.03% 00:00:18.20 [00:29:11.62] Out:400k  [      |      ]        Clip:0    

ปัญหาคือไฟล์เสียงเล่นด้วยความเร็วปกติดังนั้นสำหรับไฟล์ที่มีความยาว 1 ชั่วโมงเพื่อให้ได้รายการนี้จะใช้เวลา 1 ชั่วโมง

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

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