我正在構建一個應用程序,該應用程序將保存錄制視頻的60秒緩衝區。錄像需要長時間運行(24-48小時)。我似乎沒有任何記錄問題,但似乎在幾個小時後,我與Camera
或Surface
失去了聯繫。無盡的視頻錄製
我將最大持續時間設置爲:MediaRecorder.setMaxDuration(10 * 1000)
,以便將錄音分解爲10秒的片段。
每次我重新開始錄音時,我都會以6個文件被重複使用的方式遞增輸出文件。目的是始終保持60秒的歷史。
如果我在1-2小時後停止錄製,則視頻播放正常。但是,如果我讓它運行3-4小時並停止錄製,那麼視頻只會顯示黑色輸出和音頻。換句話說,就好像它失去了與相機或表面的連接,但繼續錄製音頻。
任何人都可以解釋這種行爲嗎?
如果沒有別的,是否有更好的方式來記錄X視頻的第二部分?
僅供參考:我正在使用喚醒鎖,以便屏幕/ CPU保持打開狀態。
我從來沒有嘗試過那樣的事情。但是,如果您可以在沒有問題的情況下獲得1-2小時快速髒修復看起來像完成()並重新開始您的錄製活動。但是這會讓您在錄製的視頻中留下空缺,這與您的活動啓動時間相差無幾。如果您有兩個設備,您可以從兩個設備和備用重啓時間錄製? – FoamyGuy
嗯,有趣的想法。實際上,我相信我可能會在錄製操作中做不按順序的事情。如同,它可能*通常*能夠重新連接到相機,但是可能有1%的情況在它自己之前(當我嘗試再次開始記錄時,MediaRecorder沒有完成寫入/關閉輸出文件?) –