QSVEnc 2.25
ご指摘いただいた問題の修正。報告いただきありがとうございました。
[QSVEncC]
・avqsvリーダーで指定されたfpsで読み込むように。
ご指摘いただき、ありがとうございました。
・ts終端などの中途半端なパケットにより音声のヘッダparser部分でエラーが発生した際に、処理が中断され、正常なファイルが出力できない問題を修正。
tsとかを処理すると、音声の最終フレームが異常なことがある。このとき、音声コピー時にはヘッダparserのエラー、音声エンコード時には音声デコーダのエラーとなる。しかし、このエラーは無視して処理を続行する必要がある。エラーを補足して、エラーメッセージを出して異常終了扱いにすることもできるが、それだと終端にゴミがあったり、dropのあるファイルとかがエンコードできなくなって、現実的ではない。
もともと2.20あたりで、壊れた音声パケットによる音声エンコード時の音声デコーダのエラーとなる場合には、「エラーを無視し、処理を続行する、ただしメッセージは表示する」ようなコードになっていた。
ところが、壊れた音声パケットにより音声コピー時にヘッダparserで起こるエラーを無視するときの処理に問題があり、「エラーは無視するが、処理は続行しない」ようになっていて、そのため正常終了したように見せかけて出力ファイルは壊れている…という事態になっていた。
今回の修正で、音声コピーでも音声エンコードでも、壊れた音声パケットによりエラーは「エラーを無視し、処理を続行する、ただしメッセージは表示する」ように変更し、意図した動作をするようになった。
>pprさま
サンプルの提供をいただき、誠にありがとうございました。ご指摘いただきましたように、NGとなっていたファイルは、終端フレームに問題があるだけで、単に最終フレームを無視すればよく、本来はエンコードできるべきファイルでした。ところが上述のようにQSVEncCのバグにより、処理を中断してしまい、音声コピー時に破損したmp4が出る一方、エラーコードは正常終了を返していました。
QSVEncC 2.25では、音声コピーでも正しく再生できるmp4が作成され、エラーコードも"0"を返すと思います。(相変わらず、終端フレームが壊れていることを意味するエラーメッセージは出ますが、エンコード全体としては正常終了となります)
QSVEnc ダウンロード>>
ダウンロード (ミラー) >>
OneDriveの調子がいまいちの時はミラー(dropbox)からどうぞ。同じものです。
QSVEncBenchmark.zipはベンチマーク用です。(約220MBと重いので注意)。run_benchmark.batをダブルクリックで実行です。
QSVEncCのオプションについてはこちら。
QSVEncCオプション一覧>
[QSVEncC]
・avqsvリーダーで指定されたfpsで読み込むように。
ご指摘いただき、ありがとうございました。
・ts終端などの中途半端なパケットにより音声のヘッダparser部分でエラーが発生した際に、処理が中断され、正常なファイルが出力できない問題を修正。
tsとかを処理すると、音声の最終フレームが異常なことがある。このとき、音声コピー時にはヘッダparserのエラー、音声エンコード時には音声デコーダのエラーとなる。しかし、このエラーは無視して処理を続行する必要がある。エラーを補足して、エラーメッセージを出して異常終了扱いにすることもできるが、それだと終端にゴミがあったり、dropのあるファイルとかがエンコードできなくなって、現実的ではない。
もともと2.20あたりで、壊れた音声パケットによる音声エンコード時の音声デコーダのエラーとなる場合には、「エラーを無視し、処理を続行する、ただしメッセージは表示する」ようなコードになっていた。
ところが、壊れた音声パケットにより音声コピー時にヘッダparserで起こるエラーを無視するときの処理に問題があり、「エラーは無視するが、処理は続行しない」ようになっていて、そのため正常終了したように見せかけて出力ファイルは壊れている…という事態になっていた。
今回の修正で、音声コピーでも音声エンコードでも、壊れた音声パケットによりエラーは「エラーを無視し、処理を続行する、ただしメッセージは表示する」ように変更し、意図した動作をするようになった。
>pprさま
サンプルの提供をいただき、誠にありがとうございました。ご指摘いただきましたように、NGとなっていたファイルは、終端フレームに問題があるだけで、単に最終フレームを無視すればよく、本来はエンコードできるべきファイルでした。ところが上述のようにQSVEncCのバグにより、処理を中断してしまい、音声コピー時に破損したmp4が出る一方、エラーコードは正常終了を返していました。
QSVEncC 2.25では、音声コピーでも正しく再生できるmp4が作成され、エラーコードも"0"を返すと思います。(相変わらず、終端フレームが壊れていることを意味するエラーメッセージは出ますが、エンコード全体としては正常終了となります)
QSVEnc ダウンロード>>
ダウンロード (ミラー) >>
OneDriveの調子がいまいちの時はミラー(dropbox)からどうぞ。同じものです。
QSVEncBenchmark.zipはベンチマーク用です。(約220MBと重いので注意)。run_benchmark.batをダブルクリックで実行です。
QSVEncCのオプションについてはこちら。
QSVEncCオプション一覧>
スポンサーサイト