Files
GigaMux/.specstory/history/2026-01-17_02-53Z-python-error-logging-and-i-o.md
2026-01-21 01:20:49 -07:00

4642 lines
214 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!-- Generated by SpecStory, Markdown v2.1.0 -->
<!-- cursor Session 86e2fa18-ef10-4f29-8bda-106c03c1d262 (2026-01-17 02:53Z) -->
# Python error logging and I/O (2026-01-17 02:53Z)
_**User (2026-01-17 02:52Z)**_
@logs/encode_20260116_185620.log:1-3108 it didn't log the python error. either way, do we know what causes it? too much i/o on the device hosting the share?
---
_**Agent (model default, mode Agent)**_
---
Reviewing the log to identify the issue and determine if it's related to I/O on the share host.
---
<tool-use data-tool-type="read" data-tool-name="read_file">
<details><summary>Tool use: **read_file** • Read file: logs/encode_20260116_185620.log</summary>
</details>
</tool-use>
---
---
Reading the log in sections to identify the issue:
---
<tool-use data-tool-type="read" data-tool-name="read_file">
<details><summary>Tool use: **read_file** • Read file: logs/encode_20260116_185620.log</summary>
</details>
</tool-use>
---
<tool-use data-tool-type="read" data-tool-name="read_file">
<details><summary>Tool use: **read_file** • Read file: logs/encode_20260116_185620.log</summary>
</details>
</tool-use>
---
<tool-use data-tool-type="search" data-tool-name="grep">
<details>
<summary>Tool use: **grep** • Grep for "error|Error|ERROR|exception|Exception|EXCEPTION|traceback|Traceback|failed|Failed|FAILED" in "logs/encode_20260116_185620.log" • 0 matches</summary>
Output mode: content
_No matches found_
</details>
</tool-use>
---
---
Searching for I/O-related messages and checking how errors are handled in the encoding code:
---
<tool-use data-tool-type="search" data-tool-name="grep">
<details>
<summary>Tool use: **grep** • Grep for "I/O|io|read|write|share|network|timeout|connection|broken|pipe" in "logs/encode_20260116_185620.log" • 36 matches</summary>
Output mode: content
| File | Content | Line |
|------|------|------|
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:21,715 - INFO - Duration: 19502.98 seconds` | L6 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:21,719 - INFO - Stream 1 (Audio):` | L12 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:21,723 - INFO - Stream 2 (Audio):` | L17 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:21,727 - INFO - Stream 3 (Audio):` | L22 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:21,730 - INFO - Stream 4 (Audio):` | L27 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:22,600 - INFO - Audio labels: [None, None, None]` | L30 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:23,015 - INFO - FFmpeg: ffmpeg version 8.0.1-essentials_build-www.gyan.dev Copyright (c) 2000-2025 the FFmpeg developers` | L31 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:23,017 - INFO - FFmpeg: configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-zlib --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-sdl2 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-libaom --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-libfreetype --enable-libfribidi --enable-libharfbuzz --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-dxva2 --enable-d3d11va --enable-d3d12va --enable-ffnvcodec --enable-libvpl --enable-nvdec --enable-nvenc --enable-vaapi --enable-openal --enable-libgme --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libtheora --enable-libvo-amrwbenc --enable-libgsm --enable-libopencore-amrnb --enable-lib [... omitted end of long line]` | L33 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:23,026 - INFO - FFmpeg: ffmpeg stats and -progress period set to 1.0.` | L41 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:23,845 - INFO - FFmpeg: minor_version : 0` | L45 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:23,847 - INFO - FFmpeg: creation_time : 2026-01-16T02:01:22.000000Z` | L47 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:23,847 - INFO - FFmpeg: encoder : OBS Studio (32.0.4)` | L48 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:23,848 - INFO - FFmpeg: Duration: 05:25:02.98, start: 0.000000, bitrate: 20498 kb/s` | L49 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:23,967 - INFO - FFmpeg: creation_time : 2026-01-16T02:01:22.000000Z` | L173 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:23,970 - INFO - FFmpeg: Stream #0:1[0x2](und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 159 kb/s (default)` | L177 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:23,972 - INFO - FFmpeg: creation_time : 2026-01-16T02:01:22.000000Z` | L179 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:23,973 - INFO - FFmpeg: handler_name : OBS Audio Handler` | L180 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:23,974 - INFO - FFmpeg: Stream #0:2[0x3](und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 159 kb/s (default)` | L182 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:23,976 - INFO - FFmpeg: creation_time : 2026-01-16T02:01:22.000000Z` | L184 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:23,977 - INFO - FFmpeg: handler_name : OBS Audio Handler` | L185 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:23,978 - INFO - FFmpeg: Stream #0:3[0x4](und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 159 kb/s (default)` | L187 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:23,980 - INFO - FFmpeg: creation_time : 2026-01-16T02:01:22.000000Z` | L189 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:23,981 - INFO - FFmpeg: handler_name : OBS Audio Handler` | L190 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:23,984 - INFO - FFmpeg: creation_time : 2026-01-16T02:01:22.000000Z` | L194 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:24,187 - INFO - FFmpeg: minor_version : 0` | L207 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:24,420 - INFO - FFmpeg: creation_time : 2026-01-16T02:01:22.000000Z` | L334 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:24,427 - INFO - FFmpeg: Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 159 kb/s (default)` | L339 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:24,430 - INFO - FFmpeg: creation_time : 2026-01-16T02:01:22.000000Z` | L341 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:24,431 - INFO - FFmpeg: handler_name : OBS Audio Handler` | L342 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:24,433 - INFO - FFmpeg: Stream #0:2(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 159 kb/s (default)` | L344 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:24,436 - INFO - FFmpeg: creation_time : 2026-01-16T02:01:22.000000Z` | L346 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:24,437 - INFO - FFmpeg: handler_name : OBS Audio Handler` | L347 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:24,440 - INFO - FFmpeg: Stream #0:3(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 159 kb/s (default)` | L349 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:24,443 - INFO - FFmpeg: creation_time : 2026-01-16T02:01:22.000000Z` | L351 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:24,444 - INFO - FFmpeg: handler_name : OBS Audio Handler` | L352 |
| `logs/encode_20260116_185620.log` | `2026-01-16 18:56:24,449 - INFO - FFmpeg: creation_time : 2026-01-16T02:01:22.000000Z` | L356 |
</details>
</tool-use>
---
<tool-use data-tool-type="search" data-tool-name="codebase_search">
<details>
<summary>Tool use: **codebase_search** • Searched codebase "How are Python exceptions and errors logged during encoding?" • **14** results</summary>
| File | Lines |
|------|-------|
| `encode_VOD.py` | L75-189 |
| `encode_dvr_high.py` | L67-168 |
| `encode_VOD.py` | L75-185 |
| `encode_VOD.py` | L18-68 |
| `encode_dvr_high.py` | L17-60 |
| `encode_dvr_high.py` | L62-164 |
| `encode_VOD.py` | L70-185 |
| `encode_VOD.py` | L27 |
| `encode_dvr_high.py` | L26 |
| `encode_VOD.py` | L77-211 |
| `encode_dvr_high.py` | L69-190 |
| `encode_dvr_high.py` | L67-164 |
| `check_files.py` | L19-48 |
| `check_files.py` | L105-287 |
</details>
</tool-use>
---
<tool-use data-tool-type="generic" data-tool-name="glob_file_search">
<details>
<summary>Tool use: **glob_file_search** • Searched codebase "*.py" • **3** results in **1** directory</summary>
Directory: **r:\Videos\mux** (3 files)
| File |
|------|
| `encode_VOD.py` |
| `check_files.py` |
| `encode_dvr_high.py` |
</details>
</tool-use>
---
---
Reading the encoding function to understand the error handling:
---
<tool-use data-tool-type="read" data-tool-name="read_file">
<details><summary>Tool use: **read_file** • Read file: encode_VOD.py</summary>
</details>
</tool-use>
---
---
The issue is in the error handling. On lines 164-165, `OSError` and `IOError` are caught and silently ignored, so I/O errors (e.g., from a network share) aren't logged. The log ends mid-encoding, which suggests the read loop stopped due to an unlogged I/O error.
Fixing this by logging these exceptions and adding broader error handling:
---
<tool-use data-tool-type="write" data-tool-name="search_replace">
<details><summary>Tool use: **search_replace** • Edit file: encode_VOD.py</summary>
**Chunk 1**
Lines added: 30, lines removed: 13
```diff
@@ -151,17 +151,34 @@
# Stream output line-by-line from a single pipe
- for line in iter(process.stdout.readline, ''):
- if not line:
- break
- text = line.strip()
- try:
- if text.startswith('frame=') or ' fps=' in text:
- logging.info(f"Progress: {text}")
- print(f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
- else:
- logging.info(f"FFmpeg: {text}")
- print(f"{Colors.GREEN}FFmpeg: {text}{Colors.ENDC}")
- except (OSError, IOError):
- pass
+ try:
+ for line in iter(process.stdout.readline, ''):
+ if not line:
+ break
+ text = line.strip()
+ try:
+ if text.startswith('frame=') or ' fps=' in text:
+ logging.info(f"Progress: {text}")
+ print(f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
+ else:
+ logging.info(f"FFmpeg: {text}")
+ print(f"{Colors.GREEN}FFmpeg: {text}{Colors.ENDC}")
+ except (OSError, IOError) as e:
+ logging.error(f"I/O error while processing FFmpeg output: {e}")
+ print(f"{Colors.RED}I/O error while processing FFmpeg output: {e}{Colors.ENDC}")
+ # Continue trying to read, but log the error
+ except (OSError, IOError) as e:
+ logging.error(f"I/O error reading from FFmpeg process (possible network share issue): {e}")
+ logging.error(f"Error type: {type(e).__name__}, Error message: {str(e)}")
+ print(f"{Colors.RED}I/O error reading from FFmpeg process (possible network share issue): {e}{Colors.ENDC}")
+ # Wait for process to finish or timeout
+ try:
+ process.wait(timeout=30)
+ except subprocess.TimeoutExpired:
+ logging.error("FFmpeg process did not terminate after I/O error")
+ process.kill()
+ except Exception as e:
+ logging.error(f"Unexpected error while reading FFmpeg output: {type(e).__name__}: {e}")
+ logging.exception("Full traceback:")
+ print(f"{Colors.RED}Unexpected error: {e}{Colors.ENDC}")
process.wait()
```
</details>
</tool-use>
---
---
Checking for linting errors and verifying the import:
---
<tool-use data-tool-type="generic" data-tool-name="read_lints">
<details>
<summary>Tool use: **read_lints** • Read lints for 1 file</summary>
Lint paths:
- `encode_VOD.py`
Lint results
**No lint errors found**
</details>
</tool-use>
---
<tool-use data-tool-type="search" data-tool-name="grep">
<details>
<summary>Tool use: **grep** • Grep for "^import|^from" in "encode_VOD.py" • 8 matches</summary>
Output mode: content
| File | Content | Line |
|------|------|------|
| `encode_VOD.py` | `import os` | L1 |
| `encode_VOD.py` | `import subprocess` | L2 |
| `encode_VOD.py` | `from pathlib import Path` | L3 |
| `encode_VOD.py` | `import json` | L4 |
| `encode_VOD.py` | `import logging` | L5 |
| `encode_VOD.py` | `from datetime import datetime` | L6 |
| `encode_VOD.py` | `import shutil` | L7 |
| `encode_VOD.py` | `import time` | L8 |
</details>
</tool-use>
---
---
Improving the outer exception handler to catch all exceptions, not just `CalledProcessError`:
---
<tool-use data-tool-type="write" data-tool-name="search_replace">
<details><summary>Tool use: **search_replace** • Edit file: encode_VOD.py</summary>
**Chunk 1**
Lines added: 5, lines removed: undefined
```diff
@@ -201,5 +201,10 @@
except subprocess.CalledProcessError as e:
logging.error(f"Error encoding {input_path}: {e}")
+ logging.exception("Full traceback:")
print(f"{Colors.RED}Error encoding {input_path}: {e}{Colors.ENDC}")
+ except Exception as e:
+ logging.error(f"Unexpected error encoding {input_path}: {type(e).__name__}: {e}")
+ logging.exception("Full traceback:")
+ print(f"{Colors.RED}Unexpected error encoding {input_path}: {e}{Colors.ENDC}")
if __name__ == "__main__":
```
</details>
</tool-use>
---
---
---
<tool-use data-tool-type="generic" data-tool-name="read_lints">
<details>
<summary>Tool use: **read_lints** • Read lints for 1 file</summary>
Lint paths:
- `encode_VOD.py`
Lint results
Lint errors for `encode_VOD.py`
| Message | Range | Severity |
|-------|-------|----------|
| Import "shutil" is not accessed | 7:8-7:14 | DIAGNOSTIC_SEVERITY_HINT |
| Import "time" is not accessed | 8:8-8:12 | DIAGNOSTIC_SEVERITY_HINT |
</details>
</tool-use>
---
---
## The Problem
The code was silently swallowing I/O errors. On lines 164-165, there was a `try-except` that caught `OSError` and `IOError` and did nothing (`pass`). When reading from FFmpeg's output pipe, if the network share had I/O issues (timeouts, connection drops, etc.), the exception was caught and ignored, so:
1. The error was never logged
2. The script stopped reading FFmpeg output
3. The process might have continued or failed, but you'd never know why
## The Fix
I've updated the error handling to:
1. Log I/O errors instead of silently ignoring them — you'll now see messages like "I/O error reading from FFmpeg process (possible network share issue)"
2. Add broader exception handling — catches all exceptions, not just `subprocess.CalledProcessError`
3. Include full tracebacks — uses `logging.exception()` to log complete stack traces
4. Handle process cleanup — if I/O fails, it waits for the process to finish or kills it after a timeout
## Root Cause
Yes, this is likely caused by I/O issues on the network share. When reading large files (46.54 GB in your case) over a network, you can encounter:
- Network timeouts
- Connection interruptions
- Buffer issues
- Share host overload
These manifest as `OSError` or `IOError` exceptions, which were previously being silently swallowed.
The next time this happens, you should see detailed error messages in the log explaining what went wrong.
---
_**User (2026-01-17 03:34Z)**_
it failed again at 8:26, but it didn't dump error, again @logs/encode_20260116_195649.log:1-2050
---
_**Agent (model default, mode Agent)**_
---
Checking the new log file to see what happened:
---
<tool-use data-tool-type="read" data-tool-name="read_file">
<details><summary>Tool use: **read_file** • Read file: logs/encode_20260116_195649.log</summary>
</details>
</tool-use>
---
<tool-use data-tool-type="search" data-tool-name="grep">
<details>
<summary>Tool use: **grep** • Grep for "error|Error|ERROR|exception|Exception|EXCEPTION|traceback|Traceback|failed|Failed|FAILED|I/O|timeout" in "logs/encode_20260116_195649.log" • 0 matches</summary>
Output mode: content
_No matches found_
</details>
</tool-use>
---
<tool-use data-tool-type="read" data-tool-name="read_file">
<details><summary>Tool use: **read_file** • Read file: logs/encode_20260116_195649.log</summary>
</details>
</tool-use>
---
---
The log stops at 20:25:31 with no error. If the log file is on the network share, logging failures can prevent errors from being written. Checking the code and adding more robust error handling:
---
<tool-use data-tool-type="read" data-tool-name="read_file">
<details><summary>Tool use: **read_file** • Read file: encode_VOD.py</summary>
</details>
</tool-use>
---
<tool-use data-tool-type="search" data-tool-name="codebase_search">
<details>
<summary>Tool use: **codebase_search** • Searched codebase "Where is the log file path configured and is it on a network share?" • **13** results</summary>
| File | Lines |
|------|-------|
| `check_files.py` | L9-41 |
| `encode_VOD.py` | L18-68 |
| `encode_dvr_high.py` | L17-60 |
| `.gitignore` | L21 |
| `check_files.py` | L50-287 |
| `check_files.py` | L105-287 |
| `encode_VOD.py` | L75-207 |
| `encode_dvr_high.py` | L62-164 |
| `encode_VOD.py` | L77-233 |
| `encode_VOD.py` | L70-207 |
| `check_files.py` | L17 |
| `encode_dvr_high.py` | L69-190 |
| `encode_dvr_high.py` | L67-168 |
</details>
</tool-use>
---
---
If the log file is on a network share, logging failures can prevent errors from being written. Adding error handling that prints to console even when logging fails, and detecting when the process stops producing output:
---
<tool-use data-tool-type="read" data-tool-name="read_file">
<details><summary>Tool use: **read_file** • Read file: encode_VOD.py</summary>
</details>
</tool-use>
---
---
Adding error handling that ensures console output even if logging fails, and detecting when the process stops producing output:
---
<tool-use data-tool-type="write" data-tool-name="search_replace">
<details><summary>Tool use: **search_replace** • Edit file: encode_VOD.py</summary>
**Chunk 1**
Lines added: 19, lines removed: undefined
```diff
@@ -76,4 +76,23 @@
return f"{size_bytes:.2f} TB"
+ def safe_log(level, message, print_msg=None):
+ """Safely log a message, ensuring console output even if logging fails"""
+ try:
+ if level == 'info':
+ logging.info(message)
+ elif level == 'error':
+ logging.error(message)
+ elif level == 'exception':
+ logging.exception(message)
+ except Exception as log_err:
+ # If logging fails, at least print to console
+ print(f"{Colors.YELLOW}[Logging failed: {log_err}] {message}{Colors.ENDC}")
+
+ # Always print to console
+ if print_msg is not None:
+ print(print_msg)
+ elif level == 'error':
+ print(f"{Colors.RED}{message}{Colors.ENDC}")
+
def encode_dvr(input_file, output_dir, gpu):
input_path = Path(input_file)
```
</details>
</tool-use>
---
<tool-use data-tool-type="write" data-tool-name="search_replace">
<details><summary>Tool use: **search_replace** • Edit file: encode_VOD.py</summary>
**Chunk 1**
Lines added: 116, lines removed: 27
```diff
@@ -169,37 +169,126 @@
)
- # Stream output line-by-line from a single pipe
- try:
- for line in iter(process.stdout.readline, ''):
- if not line:
+ # Stream output line-by-line from a single pipe with timeout detection
+ last_output_time = time.time()
+ timeout_seconds = 60 # If no output for 60 seconds, something is wrong
+ no_output_warning_seconds = 30 # Warn after 30 seconds of no output
+
+ try:
+ while True:
+ # Check if process has terminated
+ return_code = process.poll()
+ if return_code is not None:
+ # Process has finished
+ safe_log('info', f"FFmpeg process terminated with return code: {return_code}")
+ break
+
+ # Check for timeout (no output for too long)
+ elapsed_no_output = time.time() - last_output_time
+ if elapsed_no_output &gt; timeout_seconds:
+ error_msg = f"FFmpeg process stopped producing output after {elapsed_no_output:.1f} seconds (possible network share I/O issue or process crash)"
+ safe_log('error', error_msg, f"{Colors.RED}{error_msg}{Colors.ENDC}")
+ safe_log('error', f"Process still running: {return_code is None}, attempting to terminate...")
+ try:
+ process.terminate()
+ process.wait(timeout=10)
+ except subprocess.TimeoutExpired:
+ safe_log('error', "Process did not terminate, killing...")
+ process.kill()
+ process.wait()
break
- text = line.strip()
- try:
- if text.startswith('frame=') or ' fps=' in text:
- logging.info(f"Progress: {text}")
- print(f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
+ elif elapsed_no_output &gt; no_output_warning_seconds:
+ warning_msg = f"WARNING: No output from FFmpeg for {elapsed_no_output:.1f} seconds (possible I/O issue)"
+ safe_log('error', warning_msg, f"{Colors.YELLOW}{warning_msg}{Colors.ENDC}")
+
+ # Try to read a line with a short timeout
+ try:
+ # Use select or just try reading - on Windows, we'll use a different approach
+ import select
+ if select.select([process.stdout], [], [], 1.0)[0]:
+ line = process.stdout.readline()
+ if not line:
+ # EOF - process closed stdout
+ break
+ last_output_time = time.time()
+ text = line.strip()
+ if text:
+ try:
+ if text.startswith('frame=') or ' fps=' in text:
+ safe_log('info', f"Progress: {text}", f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
+ else:
+ safe_log('info', f"FFmpeg: {text}", f"{Colors.GREEN}FFmpeg: {text}{Colors.ENDC}")
+ except Exception as e:
+ safe_log('error', f"Error processing output line: {e}")
+ except (ImportError, AttributeError):
+ # Windows doesn't have select.select for pipes, use blocking read with timeout check
+ import threading
+ line_data = [None]
+ read_error = [None]
+
+ def read_line():
+ try:
+ line_data[0] = process.stdout.readline()
+ except Exception as e:
+ read_error[0] = e
+
+ reader_thread = threading.Thread(target=read_line, daemon=True)
+ reader_thread.start()
+ reader_thread.join(timeout=1.0)
+
+ if read_error[0]:
+ raise read_error[0]
+
+ if line_data[0] is not None:
+ if not line_data[0]:
+ break
+ last_output_time = time.time()
+ text = line_data[0].strip()
+ if text:
+ try:
+ if text.startswith('frame=') or ' fps=' in text:
+ safe_log('info', f"Progress: {text}", f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
+ else:
+ safe_log('info', f"FFmpeg: {text}", f"{Colors.GREEN}FFmpeg: {text}{Colors.ENDC}")
+ except Exception as e:
+ safe_log('error', f"Error processing output line: {e}")
+ elif reader_thread.is_alive():
+ # Still reading, continue loop to check timeout
+ continue
else:
- logging.info(f"FFmpeg: {text}")
- print(f"{Colors.GREEN}FFmpeg: {text}{Colors.ENDC}")
+ # Thread finished but no data - EOF
+ break
except (OSError, IOError) as e:
- logging.error(f"I/O error while processing FFmpeg output: {e}")
- print(f"{Colors.RED}I/O error while processing FFmpeg output: {e}{Colors.ENDC}")
- # Continue trying to read, but log the error
- except (OSError, IOError) as e:
- logging.error(f"I/O error reading from FFmpeg process (possible network share issue): {e}")
- logging.error(f"Error type: {type(e).__name__}, Error message: {str(e)}")
- print(f"{Colors.RED}I/O error reading from FFmpeg process (possible network share issue): {e}{Colors.ENDC}")
- # Wait for process to finish or timeout
+ error_msg = f"I/O error reading from FFmpeg process (possible network share issue): {type(e).__name__}: {str(e)}"
+ safe_log('error', error_msg, f"{Colors.RED}{error_msg}{Colors.ENDC}")
+ # Check if process is still running
+ if process.poll() is None:
+ safe_log('error', "Process still running after I/O error, waiting for termination...")
+ try:
+ process.wait(timeout=30)
+ except subprocess.TimeoutExpired:
+ safe_log('error', "Process did not terminate after I/O error, killing...")
+ process.kill()
+ process.wait()
+ break
+ except Exception as e:
+ error_msg = f"Unexpected error while reading FFmpeg output: {type(e).__name__}: {e}"
+ safe_log('error', error_msg, f"{Colors.RED}{error_msg}{Colors.ENDC}")
+ safe_log('exception', "Full traceback:")
+ break
+
+ except Exception as e:
+ error_msg = f"Critical error in output reading loop: {type(e).__name__}: {e}"
+ safe_log('error', error_msg, f"{Colors.RED}{error_msg}{Colors.ENDC}")
+ safe_log('exception', "Full traceback:")
+
+ # Ensure process has finished
+ if process.poll() is None:
+ safe_log('error', "Process still running, waiting for termination...")
try:
- process.wait(timeout=30)
+ process.wait(timeout=10)
except subprocess.TimeoutExpired:
- logging.error("FFmpeg process did not terminate after I/O error")
+ safe_log('error', "Process did not terminate, killing...")
process.kill()
- except Exception as e:
- logging.error(f"Unexpected error while reading FFmpeg output: {type(e).__name__}: {e}")
- logging.exception("Full traceback:")
- print(f"{Colors.RED}Unexpected error: {e}{Colors.ENDC}")
-
- process.wait()
+ process.wait()
if process.returncode == 0:
```
</details>
</tool-use>
---
---
Simplifying the approach for Windows compatibility:
---
<tool-use data-tool-type="read" data-tool-name="read_file">
<details><summary>Tool use: **read_file** • Read file: encode_VOD.py</summary>
</details>
</tool-use>
---
---
Simplifying to a Windows-compatible approach:
---
<tool-use data-tool-type="write" data-tool-name="search_replace">
<details><summary>Tool use: **search_replace** • Edit file: encode_VOD.py</summary>
**Chunk 1**
Lines added: 24, lines removed: 1
```diff
@@ -169,10 +169,33 @@
)
- # Stream output line-by-line from a single pipe with timeout detection
+ # Stream output line-by-line with timeout detection and process monitoring
last_output_time = time.time()
timeout_seconds = 60 # If no output for 60 seconds, something is wrong
no_output_warning_seconds = 30 # Warn after 30 seconds of no output
+ warning_sent = False
try:
+ import threading
+ import queue
+
+ # Use a queue to read lines in a separate thread (Windows-compatible)
+ output_queue = queue.Queue()
+ read_error = [None]
+
+ def read_output():
+ """Read FFmpeg output in a separate thread"""
+ try:
+ for line in iter(process.stdout.readline, ''):
+ if not line:
+ output_queue.put(None) # Signal EOF
+ break
+ output_queue.put(line)
+ except Exception as e:
+ read_error[0] = e
+ output_queue.put(None) # Signal error
+
+ reader_thread = threading.Thread(target=read_output, daemon=True)
+ reader_thread.start()
+
while True:
# Check if process has terminated
```
**Chunk 2**
Lines added: 1, lines removed: 1
```diff
@@ -188,5 +211,5 @@
error_msg = f"FFmpeg process stopped producing output after {elapsed_no_output:.1f} seconds (possible network share I/O issue or process crash)"
safe_log('error', error_msg, f"{Colors.RED}{error_msg}{Colors.ENDC}")
- safe_log('error', f"Process still running: {return_code is None}, attempting to terminate...")
+ safe_log('error', f"Process return code: {return_code}, attempting to terminate...")
try:
process.terminate()
```
**Chunk 3**
Lines added: 24, lines removed: 57
```diff
@@ -197,65 +220,32 @@
process.wait()
break
- elif elapsed_no_output &gt; no_output_warning_seconds:
+ elif elapsed_no_output &gt; no_output_warning_seconds and not warning_sent:
warning_msg = f"WARNING: No output from FFmpeg for {elapsed_no_output:.1f} seconds (possible I/O issue)"
safe_log('error', warning_msg, f"{Colors.YELLOW}{warning_msg}{Colors.ENDC}")
+ warning_sent = True
- # Try to read a line with a short timeout
+ # Try to get a line from the queue with timeout
try:
- # Use select or just try reading - on Windows, we'll use a different approach
- import select
- if select.select([process.stdout], [], [], 1.0)[0]:
- line = process.stdout.readline()
- if not line:
- # EOF - process closed stdout
- break
- last_output_time = time.time()
- text = line.strip()
- if text:
- try:
- if text.startswith('frame=') or ' fps=' in text:
- safe_log('info', f"Progress: {text}", f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
- else:
- safe_log('info', f"FFmpeg: {text}", f"{Colors.GREEN}FFmpeg: {text}{Colors.ENDC}")
- except Exception as e:
- safe_log('error', f"Error processing output line: {e}")
- except (ImportError, AttributeError):
- # Windows doesn't have select.select for pipes, use blocking read with timeout check
- import threading
- line_data = [None]
- read_error = [None]
-
- def read_line():
- try:
- line_data[0] = process.stdout.readline()
- except Exception as e:
- read_error[0] = e
-
- reader_thread = threading.Thread(target=read_line, daemon=True)
- reader_thread.start()
- reader_thread.join(timeout=1.0)
-
- if read_error[0]:
- raise read_error[0]
-
- if line_data[0] is not None:
- if not line_data[0]:
- break
- last_output_time = time.time()
- text = line_data[0].strip()
- if text:
- try:
- if text.startswith('frame=') or ' fps=' in text:
- safe_log('info', f"Progress: {text}", f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
- else:
- safe_log('info', f"FFmpeg: {text}", f"{Colors.GREEN}FFmpeg: {text}{Colors.ENDC}")
- except Exception as e:
- safe_log('error', f"Error processing output line: {e}")
- elif reader_thread.is_alive():
- # Still reading, continue loop to check timeout
- continue
- else:
- # Thread finished but no data - EOF
- break
+ line = output_queue.get(timeout=1.0)
+ if line is None:
+ # EOF or error signaled
+ if read_error[0]:
+ raise read_error[0]
+ break
+
+ last_output_time = time.time()
+ warning_sent = False # Reset warning flag on successful read
+ text = line.strip()
+ if text:
+ try:
+ if text.startswith('frame=') or ' fps=' in text:
+ safe_log('info', f"Progress: {text}", f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
+ else:
+ safe_log('info', f"FFmpeg: {text}", f"{Colors.GREEN}FFmpeg: {text}{Colors.ENDC}")
+ except Exception as e:
+ safe_log('error', f"Error processing output line: {e}")
+ except queue.Empty:
+ # Timeout waiting for output - continue loop to check process status
+ continue
except (OSError, IOError) as e:
error_msg = f"I/O error reading from FFmpeg process (possible network share issue): {type(e).__name__}: {str(e)}"
```
</details>
</tool-use>
---
---
Adding the queue import at the top:
---
<tool-use data-tool-type="write" data-tool-name="search_replace">
<details><summary>Tool use: **search_replace** • Edit file: encode_VOD.py</summary>
**Chunk 1**
Lines added: 2, lines removed: undefined
```diff
@@ -7,4 +7,6 @@
import shutil
import time
+ import queue
+ import threading
# ANSI color codes
```
</details>
</tool-use>
---
<tool-use data-tool-type="write" data-tool-name="search_replace">
<details><summary>Tool use: **search_replace** • Edit file: encode_VOD.py</summary>
**Chunk 1**
Lines added: undefined, lines removed: 3
```diff
@@ -178,7 +178,4 @@
try:
- import threading
- import queue
-
# Use a queue to read lines in a separate thread (Windows-compatible)
output_queue = queue.Queue()
```
</details>
</tool-use>
---
<tool-use data-tool-type="generic" data-tool-name="read_lints">
<details>
<summary>Tool use: **read_lints** • Read lints for 1 file</summary>
Lint paths:
- `encode_VOD.py`
Lint results
**No lint errors found**
</details>
</tool-use>
---
---
Updating other logging calls to use `safe_log` for consistency:
---
<tool-use data-tool-type="search" data-tool-name="grep">
<details>
<summary>Tool use: **grep** • Grep for "logging\.(info|error|exception)" in "encode_VOD.py" • 23 matches</summary>
Output mode: content
| File | Content | Line |
|------|------|------|
| `encode_VOD.py` | `logging.info(message)` | L84 |
| `encode_VOD.py` | `logging.error(message)` | L86 |
| `encode_VOD.py` | `logging.exception(message)` | L88 |
| `encode_VOD.py` | `logging.info(f"Processing file: \{input_path\}")` | L108 |
| `encode_VOD.py` | `logging.info(f"Input size: \{format_size(input_size)\}")` | L109 |
| `encode_VOD.py` | `logging.info(f"Duration: \{duration:.2f\} seconds")` | L110 |
| `encode_VOD.py` | `logging.info(f"Stream \{i\} (\{stream_type\}):")` | L119 |
| `encode_VOD.py` | `logging.info(f" \{key\}: \{value\}")` | L121 |
| `encode_VOD.py` | `logging.info(f"Skipping \{input_path\} - output already exists: \{output_path\}")` | L126 |
| `encode_VOD.py` | `logging.info(f"Output size: \{format_size(output_size)\}")` | L127 |
| `encode_VOD.py` | `logging.info(f"Audio labels: \{audio_labels\}")` | L133 |
| `encode_VOD.py` | `logging.info(f"Successfully encoded: \{output_path\}")` | L289 |
| `encode_VOD.py` | `logging.info(f"Output size: \{format_size(output_size)\}")` | L290 |
| `encode_VOD.py` | `logging.info(f"Compression ratio: \{compression_ratio:.2f\}x")` | L291 |
| `encode_VOD.py` | `logging.error(f"FFmpeg process failed with return code \{process.returncode\}")` | L295 |
| `encode_VOD.py` | `logging.error(f"Error encoding \{input_path\}: \{e\}")` | L299 |
| `encode_VOD.py` | `logging.exception("Full traceback:")` | L300 |
| `encode_VOD.py` | `logging.error(f"Unexpected error encoding \{input_path\}: \{type(e).__name__\}: \{e\}")` | L303 |
| `encode_VOD.py` | `logging.exception("Full traceback:")` | L304 |
| `encode_VOD.py` | `logging.info(f"Selected GPU: \{gpu\}")` | L310 |
| `encode_VOD.py` | `logging.info("No files to process in input directory")` | L321 |
| `encode_VOD.py` | `logging.info(f"Found \{total_files\} files to process")` | L324 |
| `encode_VOD.py` | `logging.info(f"Processing file \{i\}/\{total_files\}: \{file\}")` | L329 |
</details>
</tool-use>
---
---
Updating critical logging calls in error handling and completion messages:
---
<tool-use data-tool-type="write" data-tool-name="search_replace">
<details><summary>Tool use: **search_replace** • Edit file: encode_VOD.py</summary>
**Chunk 1**
Lines added: 14, lines removed: 13
```diff
@@ -287,21 +287,22 @@
compression_ratio = input_size / output_size if output_size &gt; 0 else 0
- logging.info(f"Successfully encoded: {output_path}")
- logging.info(f"Output size: {format_size(output_size)}")
- logging.info(f"Compression ratio: {compression_ratio:.2f}x")
- print(f"{Colors.GREEN}Successfully encoded: {output_path}{Colors.ENDC}")
- print(f"Compression ratio: {compression_ratio:.2f}x")
+ success_msg = f"Successfully encoded: {output_path}"
+ safe_log('info', success_msg, f"{Colors.GREEN}{success_msg}{Colors.ENDC}")
+ size_msg = f"Output size: {format_size(output_size)}"
+ safe_log('info', size_msg)
+ ratio_msg = f"Compression ratio: {compression_ratio:.2f}x"
+ safe_log('info', ratio_msg, f"Compression ratio: {compression_ratio:.2f}x")
else:
- logging.error(f"FFmpeg process failed with return code {process.returncode}")
- print(f"{Colors.RED}FFmpeg process failed with return code {process.returncode}{Colors.ENDC}")
+ error_msg = f"FFmpeg process failed with return code {process.returncode}"
+ safe_log('error', error_msg, f"{Colors.RED}{error_msg}{Colors.ENDC}")
except subprocess.CalledProcessError as e:
- logging.error(f"Error encoding {input_path}: {e}")
- logging.exception("Full traceback:")
- print(f"{Colors.RED}Error encoding {input_path}: {e}{Colors.ENDC}")
+ error_msg = f"Error encoding {input_path}: {e}"
+ safe_log('error', error_msg, f"{Colors.RED}{error_msg}{Colors.ENDC}")
+ safe_log('exception', "Full traceback:")
except Exception as e:
- logging.error(f"Unexpected error encoding {input_path}: {type(e).__name__}: {e}")
- logging.exception("Full traceback:")
- print(f"{Colors.RED}Unexpected error encoding {input_path}: {e}{Colors.ENDC}")
+ error_msg = f"Unexpected error encoding {input_path}: {type(e).__name__}: {e}"
+ safe_log('error', error_msg, f"{Colors.RED}{error_msg}{Colors.ENDC}")
+ safe_log('exception', "Full traceback:")
if __name__ == "__main__":
```
</details>
</tool-use>
---
<tool-use data-tool-type="generic" data-tool-name="read_lints">
<details>
<summary>Tool use: **read_lints** • Read lints for 1 file</summary>
Lint paths:
- `encode_VOD.py`
Lint results
**No lint errors found**
</details>
</tool-use>
---
---
## Improvements
1. **`safe_log()` function** — Ensures console output even if logging fails (e.g., network share I/O issues). Logs to file when possible, always prints to console.
2. **Timeout detection** — Detects when FFmpeg stops producing output:
- Warns after 30 seconds of no output
- Errors and terminates after 60 seconds
- Helps catch network I/O issues
3. **Threading-based reading** — Uses a separate thread with a queue to read FFmpeg output (Windows-compatible), avoiding blocking and allowing process monitoring.
4. **Process monitoring** — Checks `process.poll()` to detect crashes or termination even if output stops.
5. **Exception handling** — Catches and logs all exceptions with full tracebacks, including I/O errors that were previously swallowed.
## What This Fixes
- I/O errors are logged and printed to console
- Stalled processes are detected via timeout
- Process crashes are detected even if output stops
- Logging failures don't hide errors (console output always works)
If the network share has I/O issues, you should see:
- Console warnings/errors printed immediately
- Log file entries (if logging works)
- Timeout warnings if output stops
- Process status information
Run it again; errors should be visible in both the console and the log file.
---
_**User (2026-01-18 05:55Z)**_
@logs/encode_20260118_000454.log:1-429
The log didn't catch these errors:
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13616 fps= 46 q=10.0 size= 29440KiB time=00:03:46.86 bitrate=1063.1kbits/s speed=0.765x elapsed=0:04:56.64'
Arguments: ()
Progress: frame=13616 fps= 46 q=10.0 size= 29440KiB time=00:03:46.86 bitrate=1063.1kbits/s speed=0.765x elapsed=0:04:56.64
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 46 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.764x elapsed=0:04:57.66'
Arguments: ()
Progress: frame=13645 fps= 46 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.764x elapsed=0:04:57.66
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 46 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.761x elapsed=0:04:58.66'
Arguments: ()
Progress: frame=13645 fps= 46 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.761x elapsed=0:04:58.66
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 46 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.758x elapsed=0:04:59.68'
Arguments: ()
Progress: frame=13645 fps= 46 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.758x elapsed=0:04:59.68
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 45 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.756x elapsed=0:05:00.70'
Arguments: ()
Progress: frame=13645 fps= 45 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.756x elapsed=0:05:00.70
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 45 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.753x elapsed=0:05:01.72'
Arguments: ()
Progress: frame=13645 fps= 45 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.753x elapsed=0:05:01.72
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 45 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.751x elapsed=0:05:02.73'
Arguments: ()
Progress: frame=13645 fps= 45 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.751x elapsed=0:05:02.73
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 45 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.748x elapsed=0:05:03.75'
Arguments: ()
Progress: frame=13645 fps= 45 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.748x elapsed=0:05:03.75
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 45 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.746x elapsed=0:05:04.77'
Arguments: ()
Progress: frame=13645 fps= 45 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.746x elapsed=0:05:04.77
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 45 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.743x elapsed=0:05:05.77'
Arguments: ()
Progress: frame=13645 fps= 45 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.743x elapsed=0:05:05.77
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 44 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.741x elapsed=0:05:06.79'
Arguments: ()
Progress: frame=13645 fps= 44 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.741x elapsed=0:05:06.79
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 44 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.738x elapsed=0:05:07.81'
Arguments: ()
Progress: frame=13645 fps= 44 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.738x elapsed=0:05:07.81
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 44 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.736x elapsed=0:05:08.82'
Arguments: ()
Progress: frame=13645 fps= 44 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.736x elapsed=0:05:08.82
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 44 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.734x elapsed=0:05:09.84'
Arguments: ()
Progress: frame=13645 fps= 44 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.734x elapsed=0:05:09.84
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 44 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.731x elapsed=0:05:10.85'
Arguments: ()
Progress: frame=13645 fps= 44 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.731x elapsed=0:05:10.85
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 44 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.729x elapsed=0:05:11.87'
Arguments: ()
Progress: frame=13645 fps= 44 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.729x elapsed=0:05:11.87
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 44 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.726x elapsed=0:05:12.89'
Arguments: ()
Progress: frame=13645 fps= 44 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.726x elapsed=0:05:12.89
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 43 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.724x elapsed=0:05:13.91'
Arguments: ()
Progress: frame=13645 fps= 43 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.724x elapsed=0:05:13.91
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 43 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.722x elapsed=0:05:14.92'
Arguments: ()
Progress: frame=13645 fps= 43 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.722x elapsed=0:05:14.92
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 43 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.719x elapsed=0:05:15.94'
Arguments: ()
Progress: frame=13645 fps= 43 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.719x elapsed=0:05:15.94
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 43 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.717x elapsed=0:05:16.96'
Arguments: ()
Progress: frame=13645 fps= 43 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.717x elapsed=0:05:16.96
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 43 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.715x elapsed=0:05:17.98'
Arguments: ()
Progress: frame=13645 fps= 43 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.715x elapsed=0:05:17.98
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 43 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.713x elapsed=0:05:19.00'
Arguments: ()
Progress: frame=13645 fps= 43 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.713x elapsed=0:05:19.00
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 43 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.71x elapsed=0:05:20.01'
Arguments: ()
Progress: frame=13645 fps= 43 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.71x elapsed=0:05:20.01
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 43 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.708x elapsed=0:05:21.03'
Arguments: ()
Progress: frame=13645 fps= 43 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.708x elapsed=0:05:21.03
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 42 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.706x elapsed=0:05:22.05'
Arguments: ()
Progress: frame=13645 fps= 42 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.706x elapsed=0:05:22.05
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 42 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.704x elapsed=0:05:23.06'
Arguments: ()
Progress: frame=13645 fps= 42 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.704x elapsed=0:05:23.06
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 42 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.701x elapsed=0:05:24.07'
Arguments: ()
Progress: frame=13645 fps= 42 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.701x elapsed=0:05:24.07
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 42 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.699x elapsed=0:05:25.08'
Arguments: ()
Progress: frame=13645 fps= 42 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.699x elapsed=0:05:25.08
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 42 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.697x elapsed=0:05:26.10'
Arguments: ()
Progress: frame=13645 fps= 42 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.697x elapsed=0:05:26.10
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 42 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.695x elapsed=0:05:27.12'
Arguments: ()
Progress: frame=13645 fps= 42 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.695x elapsed=0:05:27.12
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 42 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.693x elapsed=0:05:28.13'
Arguments: ()
Progress: frame=13645 fps= 42 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.693x elapsed=0:05:28.13
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 41 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.691x elapsed=0:05:29.15'
Arguments: ()
Progress: frame=13645 fps= 41 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.691x elapsed=0:05:29.15
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 41 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.688x elapsed=0:05:30.17'
Arguments: ()
Progress: frame=13645 fps= 41 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.688x elapsed=0:05:30.17
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 41 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.686x elapsed=0:05:31.18'
Arguments: ()
Progress: frame=13645 fps= 41 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.686x elapsed=0:05:31.18
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 41 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.684x elapsed=0:05:32.20'
Arguments: ()
Progress: frame=13645 fps= 41 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.684x elapsed=0:05:32.20
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13645 fps= 41 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.682x elapsed=0:05:33.22'
Arguments: ()
Progress: frame=13645 fps= 41 q=10.0 size= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.682x elapsed=0:05:33.22
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 162, in encode_dvr
logging.info(f"FFmpeg: {text}")
Message: 'FFmpeg: [in#0/mov,mp4,m4a,3gp,3g2,mj2 @ 0000022523474800] Error during demuxing: Invalid argument'
Arguments: ()
FFmpeg: [in#0/mov,mp4,m4a,3gp,3g2,mj2 @ 0000022523474800] Error during demuxing: Invalid argument
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13699 fps= 38 q=8.0 size= 29440KiB time=00:03:48.26 bitrate=1056.5kbits/s speed=0.625x elapsed=0:06:05.29'
Arguments: ()
Progress: frame=13699 fps= 38 q=8.0 size= 29440KiB time=00:03:48.26 bitrate=1056.5kbits/s speed=0.625x elapsed=0:06:05.29
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 162, in encode_dvr
logging.info(f"FFmpeg: {text}")
Message: 'FFmpeg: [out#0/mp4 @ 0000022524324800] Error writing trailer: Invalid argument'
Arguments: ()
FFmpeg: [out#0/mp4 @ 0000022524324800] Error writing trailer: Invalid argument
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 162, in encode_dvr
logging.info(f"FFmpeg: {text}")
Message: 'FFmpeg: [out#0/mp4 @ 0000022524324800] Error closing file: Invalid argument'
Arguments: ()
FFmpeg: [out#0/mp4 @ 0000022524324800] Error closing file: Invalid argument
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 162, in encode_dvr
logging.info(f"FFmpeg: {text}")
Message: 'FFmpeg: [out#0/mp4 @ 0000022524324800] video:20811KiB audio:8882KiB subtitle:0KiB other streams:0KiB global headers:0KiB muxing overhead: unknown'
Arguments: ()
FFmpeg: [out#0/mp4 @ 0000022524324800] video:20811KiB audio:8882KiB subtitle:0KiB other streams:0KiB global headers:0KiB muxing overhead: unknown
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 159, in encode_dvr
logging.info(f"Progress: {text}")
Message: 'Progress: frame=13700 fps= 38 q=10.0 Lsize= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.622x elapsed=0:06:05.30'
Arguments: ()
Progress: frame=13700 fps= 38 q=10.0 Lsize= 29440KiB time=00:03:47.30 bitrate=1061.0kbits/s speed=0.622x elapsed=0:06:05.30
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 162, in encode_dvr
logging.info(f"FFmpeg: {text}")
Message: 'FFmpeg: Conversion failed!'
Arguments: ()
FFmpeg: Conversion failed!
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 212, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 181, in encode_dvr
logging.error(f"FFmpeg process failed with return code {process.returncode}")
Message: 'FFmpeg process failed with return code 4294967274'
Arguments: ()
FFmpeg process failed with return code 4294967274
Exception ignored while finalizing file <_io.TextIOWrapper name='R:\\Videos\\mux\\logs\\encode_20260118_000454.log' mode='w' encoding='cp1252'>:
OSError: [Errno 22] Invalid argument
Press any key to continue . . .
---
_**Agent (model default, mode Agent)**_
---
Logging is failing because the log file is on a network share (`R:\Videos\mux\logs\...`) and `flush()` raises `OSError: [Errno 22] Invalid argument`. Python's logging prints these to stderr, but they aren't caught. Adding error handling to catch logging failures and ensure console output:
---
<tool-use data-tool-type="read" data-tool-name="read_file">
<details><summary>Tool use: **read_file** • Read file: encode_VOD.py</summary>
</details>
</tool-use>
---
---
Adding a safe logging wrapper that catches logging failures and ensures console output:
---
<tool-use data-tool-type="write" data-tool-name="search_replace">
<details><summary>Tool use: **search_replace** • Edit file: encode_VOD.py</summary>
**Chunk 1**
Lines added: 52, lines removed: undefined
```diff
@@ -76,4 +76,56 @@
return f"{size_bytes:.2f} TB"
+ def safe_log_info(message, print_msg=None):
+ """Safely log info message, ensuring console output even if logging fails"""
+ try:
+ logging.info(message)
+ except (OSError, IOError) as e:
+ # Logging failed (likely network share issue) - print to console
+ if print_msg is None:
+ print(f"{Colors.YELLOW}[Logging failed: {e}] {message}{Colors.ENDC}")
+ else:
+ print(print_msg)
+ print(f"{Colors.YELLOW}[Logging failed: {e}]{Colors.ENDC}")
+ return
+ except Exception as e:
+ # Other logging errors
+ if print_msg is None:
+ print(f"{Colors.YELLOW}[Logging error: {e}] {message}{Colors.ENDC}")
+ else:
+ print(print_msg)
+ print(f"{Colors.YELLOW}[Logging error: {e}]{Colors.ENDC}")
+ return
+
+ # Always print to console if message provided
+ if print_msg is not None:
+ print(print_msg)
+
+ def safe_log_error(message, print_msg=None):
+ """Safely log error message, ensuring console output even if logging fails"""
+ try:
+ logging.error(message)
+ except (OSError, IOError) as e:
+ # Logging failed (likely network share issue) - print to console
+ if print_msg is None:
+ print(f"{Colors.RED}[Logging failed: {e}] {message}{Colors.ENDC}")
+ else:
+ print(print_msg)
+ print(f"{Colors.RED}[Logging failed: {e}]{Colors.ENDC}")
+ return
+ except Exception as e:
+ # Other logging errors
+ if print_msg is None:
+ print(f"{Colors.RED}[Logging error: {e}] {message}{Colors.ENDC}")
+ else:
+ print(print_msg)
+ print(f"{Colors.RED}[Logging error: {e}]{Colors.ENDC}")
+ return
+
+ # Always print to console if message provided
+ if print_msg is not None:
+ print(print_msg)
+ else:
+ print(f"{Colors.RED}{message}{Colors.ENDC}")
+
def encode_dvr(input_file, output_dir, gpu):
input_path = Path(input_file)
```
</details>
</tool-use>
---
<tool-use data-tool-type="write" data-tool-name="search_replace">
<details><summary>Tool use: **search_replace** • Edit file: encode_VOD.py</summary>
**Chunk 1**
Lines added: 9, lines removed: 6
```diff
@@ -209,11 +209,14 @@
try:
if text.startswith('frame=') or ' fps=' in text:
- logging.info(f"Progress: {text}")
- print(f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
+ safe_log_info(f"Progress: {text}", f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
else:
- logging.info(f"FFmpeg: {text}")
- print(f"{Colors.GREEN}FFmpeg: {text}{Colors.ENDC}")
- except (OSError, IOError):
- pass
+ safe_log_info(f"FFmpeg: {text}", f"{Colors.GREEN}FFmpeg: {text}{Colors.ENDC}")
+ except (OSError, IOError) as e:
+ # I/O error reading from pipe - log it
+ safe_log_error(f"I/O error reading FFmpeg output: {e}")
+ break
+ except Exception as e:
+ # Unexpected error
+ safe_log_error(f"Unexpected error processing FFmpeg output: {e}")
process.wait()
```
</details>
</tool-use>
---
<tool-use data-tool-type="write" data-tool-name="search_replace">
<details><summary>Tool use: **search_replace** • Edit file: encode_VOD.py</summary>
**Chunk 1**
Lines added: 13, lines removed: 9
```diff
@@ -228,16 +228,20 @@
compression_ratio = input_size / output_size if output_size &gt; 0 else 0
- logging.info(f"Successfully encoded: {output_path}")
- logging.info(f"Output size: {format_size(output_size)}")
- logging.info(f"Compression ratio: {compression_ratio:.2f}x")
- print(f"{Colors.GREEN}Successfully encoded: {output_path}{Colors.ENDC}")
- print(f"Compression ratio: {compression_ratio:.2f}x")
+ safe_log_info(f"Successfully encoded: {output_path}", f"{Colors.GREEN}Successfully encoded: {output_path}{Colors.ENDC}")
+ safe_log_info(f"Output size: {format_size(output_size)}")
+ safe_log_info(f"Compression ratio: {compression_ratio:.2f}x", f"Compression ratio: {compression_ratio:.2f}x")
else:
- logging.error(f"FFmpeg process failed with return code {process.returncode}")
- print(f"{Colors.RED}FFmpeg process failed with return code {process.returncode}{Colors.ENDC}")
+ # Convert Windows error code to signed integer if needed
+ return_code = process.returncode
+ if return_code &gt; 2147483647: # If it's a large unsigned int, convert to signed
+ return_code = return_code - 4294967296
+ safe_log_error(f"FFmpeg process failed with return code {return_code}",
+ f"{Colors.RED}FFmpeg process failed with return code {return_code}{Colors.ENDC}")
except subprocess.CalledProcessError as e:
- logging.error(f"Error encoding {input_path}: {e}")
- print(f"{Colors.RED}Error encoding {input_path}: {e}{Colors.ENDC}")
+ safe_log_error(f"Error encoding {input_path}: {e}", f"{Colors.RED}Error encoding {input_path}: {e}{Colors.ENDC}")
+ except Exception as e:
+ safe_log_error(f"Unexpected error encoding {input_path}: {type(e).__name__}: {e}",
+ f"{Colors.RED}Unexpected error encoding {input_path}: {e}{Colors.ENDC}")
if __name__ == "__main__":
```
</details>
</tool-use>
---
<tool-use data-tool-type="generic" data-tool-name="read_lints">
<details>
<summary>Tool use: **read_lints** • Read lints for 1 file</summary>
Lint paths:
- `encode_VOD.py`
Lint results
**No lint errors found**
</details>
</tool-use>
---
---
Updating the remaining logging calls to use the safe wrapper:
---
<tool-use data-tool-type="search" data-tool-name="grep">
<details>
<summary>Tool use: **grep** • Grep for "logging\.(info|error)" in "encode_VOD.py" • 14 matches</summary>
Output mode: content
| File | Content | Line |
|------|------|------|
| `encode_VOD.py` | `logging.info(message)` | L81 |
| `encode_VOD.py` | `logging.error(message)` | L106 |
| `encode_VOD.py` | `logging.info(f"Processing file: \{input_path\}")` | L139 |
| `encode_VOD.py` | `logging.info(f"Input size: \{format_size(input_size)\}")` | L140 |
| `encode_VOD.py` | `logging.info(f"Duration: \{duration:.2f\} seconds")` | L141 |
| `encode_VOD.py` | `logging.info(f"Stream \{i\} (\{stream_type\}):")` | L150 |
| `encode_VOD.py` | `logging.info(f" \{key\}: \{value\}")` | L152 |
| `encode_VOD.py` | `logging.info(f"Skipping \{input_path\} - output already exists: \{output_path\}")` | L157 |
| `encode_VOD.py` | `logging.info(f"Output size: \{format_size(output_size)\}")` | L158 |
| `encode_VOD.py` | `logging.info(f"Audio labels: \{audio_labels\}")` | L164 |
| `encode_VOD.py` | `logging.info(f"Selected GPU: \{gpu\}")` | L250 |
| `encode_VOD.py` | `logging.info("No files to process in input directory")` | L261 |
| `encode_VOD.py` | `logging.info(f"Found \{total_files\} files to process")` | L264 |
| `encode_VOD.py` | `logging.info(f"Processing file \{i\}/\{total_files\}: \{file\}")` | L269 |
</details>
</tool-use>
---
---
Updating the remaining critical logging calls:
---
<tool-use data-tool-type="read" data-tool-name="read_file">
<details><summary>Tool use: **read_file** • Read file: encode_VOD.py</summary>
</details>
</tool-use>
---
<tool-use data-tool-type="write" data-tool-name="search_replace">
<details><summary>Tool use: **search_replace** • Edit file: encode_VOD.py</summary>
**Chunk 1**
Lines added: 3, lines removed: 3
```diff
@@ -137,7 +137,7 @@
duration = float(file_info['format']['duration'])
- logging.info(f"Processing file: {input_path}")
- logging.info(f"Input size: {format_size(input_size)}")
- logging.info(f"Duration: {duration:.2f} seconds")
+ safe_log_info(f"Processing file: {input_path}")
+ safe_log_info(f"Input size: {format_size(input_size)}")
+ safe_log_info(f"Duration: {duration:.2f} seconds")
print(f"\n{Colors.BLUE}Processing file: {input_path}{Colors.ENDC}")
```
**Chunk 2**
Lines added: 5, lines removed: 5
```diff
@@ -148,19 +148,19 @@
for i, stream in enumerate(file_info.get('streams', [])):
stream_type = 'Video' if stream.get('codec_name', '').startswith('h') else 'Audio'
- logging.info(f"Stream {i} ({stream_type}):")
+ safe_log_info(f"Stream {i} ({stream_type}):")
for key, value in stream.items():
- logging.info(f" {key}: {value}")
+ safe_log_info(f" {key}: {value}")
# Skip if output file already exists
if output_path.exists():
output_size = output_path.stat().st_size
- logging.info(f"Skipping {input_path} - output already exists: {output_path}")
- logging.info(f"Output size: {format_size(output_size)}")
+ safe_log_info(f"Skipping {input_path} - output already exists: {output_path}")
+ safe_log_info(f"Output size: {format_size(output_size)}")
print(f"{Colors.YELLOW}Skipping {input_path} - output already exists{Colors.ENDC}")
return
# Get audio labels
audio_labels = get_audio_labels(str(input_path))
- logging.info(f"Audio labels: {audio_labels}")
+ safe_log_info(f"Audio labels: {audio_labels}")
# FFmpeg command with NVIDIA HEVC encoder and maximum quality
```
</details>
</tool-use>
---
<tool-use data-tool-type="read" data-tool-name="read_file">
<details><summary>Tool use: **read_file** • Read file: encode_VOD.py</summary>
</details>
</tool-use>
---
<tool-use data-tool-type="write" data-tool-name="search_replace">
<details><summary>Tool use: **search_replace** • Edit file: encode_VOD.py</summary>
**Chunk 1**
Lines added: 1, lines removed: 1
```diff
@@ -248,5 +248,5 @@
# Get GPU selection
gpu = get_gpu_selection()
- logging.info(f"Selected GPU: {gpu}")
+ safe_log_info(f"Selected GPU: {gpu}")
input_dir = "input"
```
**Chunk 2**
Lines added: 3, lines removed: 5
```diff
@@ -259,13 +259,11 @@
if total_files == 0:
- logging.info("No files to process in input directory")
- print(f"{Colors.YELLOW}No files to process in input directory{Colors.ENDC}")
+ safe_log_info("No files to process in input directory", f"{Colors.YELLOW}No files to process in input directory{Colors.ENDC}")
else:
- logging.info(f"Found {total_files} files to process")
- print(f"{Colors.BLUE}Found {total_files} files to process{Colors.ENDC}")
+ safe_log_info(f"Found {total_files} files to process", f"{Colors.BLUE}Found {total_files} files to process{Colors.ENDC}")
for i, file in enumerate(files, 1):
input_file = os.path.join(input_dir, file)
- logging.info(f"Processing file {i}/{total_files}: {file}")
+ safe_log_info(f"Processing file {i}/{total_files}: {file}")
print(f"\n{Colors.BLUE}Processing file {i}/{total_files}: {file}{Colors.ENDC}")
encode_dvr(input_file, output_dir, gpu)
```
</details>
</tool-use>
---
<tool-use data-tool-type="generic" data-tool-name="read_lints">
<details>
<summary>Tool use: **read_lints** • Read lints for 1 file</summary>
Lint paths:
- `encode_VOD.py`
Lint results
**No lint errors found**
</details>
</tool-use>
---
---
Added error handling for logging failures. Changes:
## Changes Made
1. **`safe_log_info()` and `safe_log_error()` functions** — Wrap all logging calls to catch `OSError` and `IOError` when the log file can't be written (e.g., network share issues).
2. **Console fallback** — If logging fails, messages are printed to the console with a warning, so errors remain visible.
3. **Error code handling** — Converts Windows unsigned error codes (like `4294967274`) to signed integers for readability.
4. **Updated all logging calls** — Replaced `logging.info()` and `logging.error()` with the safe wrappers throughout the code.
## What This Fixes
When the network share has I/O issues:
- Logging failures are caught and handled
- Errors are still printed to the console
- The script continues running instead of crashing
- You'll see warnings like `[Logging failed: ...]` in the console when logging fails
The console output shows the actual FFmpeg errors:
- `Error during demuxing: Invalid argument`
- `Error writing trailer: Invalid argument`
- `Conversion failed!`
These indicate FFmpeg couldn't read/write files on the network share, likely due to I/O issues on the share host. The script now handles these gracefully and continues to show errors even when logging fails.
---
_**User (2026-01-18 05:55Z)**_
@logs/encode_20260118_104450.log:1-130 it didn't catch it, again.
Progress: frame= 3201 fps=143 q=5.0 size= 5888KiB time=00:00:53.30 bitrate= 905.0kbits/s speed=2.39x elapsed=0:00:22.33
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 211, in encode_dvr
safe_log_info(f"Progress: {text}", f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'Progress: frame= 3347 fps=143 q=5.0 size= 6144KiB time=00:00:55.73 bitrate= 903.1kbits/s speed=2.39x elapsed=0:00:23.35'
Arguments: ()
Progress: frame= 3347 fps=143 q=5.0 size= 6144KiB time=00:00:55.73 bitrate= 903.1kbits/s speed=2.39x elapsed=0:00:23.35
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 211, in encode_dvr
safe_log_info(f"Progress: {text}", f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'Progress: frame= 3375 fps=139 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=2.31x elapsed=0:00:24.36'
Arguments: ()
Progress: frame= 3375 fps=139 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=2.31x elapsed=0:00:24.36
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 211, in encode_dvr
safe_log_info(f"Progress: {text}", f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'Progress: frame= 3375 fps=133 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=2.21x elapsed=0:00:25.38'
Arguments: ()
Progress: frame= 3375 fps=133 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=2.21x elapsed=0:00:25.38
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 211, in encode_dvr
safe_log_info(f"Progress: {text}", f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'Progress: frame= 3375 fps=128 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=2.13x elapsed=0:00:26.39'
Arguments: ()
Progress: frame= 3375 fps=128 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=2.13x elapsed=0:00:26.39
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 211, in encode_dvr
safe_log_info(f"Progress: {text}", f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'Progress: frame= 3375 fps=123 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=2.05x elapsed=0:00:27.41'
Arguments: ()
Progress: frame= 3375 fps=123 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=2.05x elapsed=0:00:27.41
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 211, in encode_dvr
safe_log_info(f"Progress: {text}", f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'Progress: frame= 3375 fps=119 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=1.98x elapsed=0:00:28.43'
Arguments: ()
Progress: frame= 3375 fps=119 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=1.98x elapsed=0:00:28.43
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 211, in encode_dvr
safe_log_info(f"Progress: {text}", f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'Progress: frame= 3375 fps=115 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=1.91x elapsed=0:00:29.44'
Arguments: ()
Progress: frame= 3375 fps=115 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=1.91x elapsed=0:00:29.44
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 211, in encode_dvr
safe_log_info(f"Progress: {text}", f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'Progress: frame= 3375 fps=111 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=1.84x elapsed=0:00:30.46'
Arguments: ()
Progress: frame= 3375 fps=111 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=1.84x elapsed=0:00:30.46
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 211, in encode_dvr
safe_log_info(f"Progress: {text}", f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'Progress: frame= 3375 fps=107 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=1.79x elapsed=0:00:31.47'
Arguments: ()
Progress: frame= 3375 fps=107 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=1.79x elapsed=0:00:31.47
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 211, in encode_dvr
safe_log_info(f"Progress: {text}", f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'Progress: frame= 3375 fps=104 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=1.73x elapsed=0:00:32.49'
Arguments: ()
Progress: frame= 3375 fps=104 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=1.73x elapsed=0:00:32.49
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 211, in encode_dvr
safe_log_info(f"Progress: {text}", f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'Progress: frame= 3375 fps=101 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=1.68x elapsed=0:00:33.50'
Arguments: ()
Progress: frame= 3375 fps=101 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=1.68x elapsed=0:00:33.50
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 211, in encode_dvr
safe_log_info(f"Progress: {text}", f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'Progress: frame= 3375 fps= 98 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=1.63x elapsed=0:00:34.52'
Arguments: ()
Progress: frame= 3375 fps= 98 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=1.63x elapsed=0:00:34.52
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 211, in encode_dvr
safe_log_info(f"Progress: {text}", f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'Progress: frame= 3375 fps= 95 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=1.58x elapsed=0:00:35.54'
Arguments: ()
Progress: frame= 3375 fps= 95 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=1.58x elapsed=0:00:35.54
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 211, in encode_dvr
safe_log_info(f"Progress: {text}", f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'Progress: frame= 3375 fps= 92 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=1.54x elapsed=0:00:36.55'
Arguments: ()
Progress: frame= 3375 fps= 92 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=1.54x elapsed=0:00:36.55
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 211, in encode_dvr
safe_log_info(f"Progress: {text}", f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'Progress: frame= 3375 fps= 90 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed= 1.5x elapsed=0:00:37.57'
Arguments: ()
Progress: frame= 3375 fps= 90 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed= 1.5x elapsed=0:00:37.57
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 211, in encode_dvr
safe_log_info(f"Progress: {text}", f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'Progress: frame= 3375 fps= 87 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=1.46x elapsed=0:00:38.58'
Arguments: ()
Progress: frame= 3375 fps= 87 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=1.46x elapsed=0:00:38.58
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 211, in encode_dvr
safe_log_info(f"Progress: {text}", f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'Progress: frame= 3375 fps= 85 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=1.42x elapsed=0:00:39.60'
Arguments: ()
Progress: frame= 3375 fps= 85 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=1.42x elapsed=0:00:39.60
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 211, in encode_dvr
safe_log_info(f"Progress: {text}", f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'Progress: frame= 3375 fps= 83 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=1.38x elapsed=0:00:40.61'
Arguments: ()
Progress: frame= 3375 fps= 83 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=1.38x elapsed=0:00:40.61
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 211, in encode_dvr
safe_log_info(f"Progress: {text}", f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'Progress: frame= 3375 fps= 81 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=1.35x elapsed=0:00:41.63'
Arguments: ()
Progress: frame= 3375 fps= 81 q=5.0 size= 6144KiB time=00:00:56.20 bitrate= 895.6kbits/s speed=1.35x elapsed=0:00:41.63
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 213, in encode_dvr
safe_log_info(f"FFmpeg: {text}", f"{Colors.GREEN}FFmpeg: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'FFmpeg: [mov,mp4,m4a,3gp,3g2,mj2 @ 000001f4070748c0] Packet corrupt (stream = 0, dts = 3426960).'
Arguments: ()
FFmpeg: [mov,mp4,m4a,3gp,3g2,mj2 @ 000001f4070748c0] Packet corrupt (stream = 0, dts = 3426960).
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 213, in encode_dvr
safe_log_info(f"FFmpeg: {text}", f"{Colors.GREEN}FFmpeg: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'FFmpeg: [in#0/mov,mp4,m4a,3gp,3g2,mj2 @ 000001f407074680] corrupt input packet in stream 0'
Arguments: ()
FFmpeg: [in#0/mov,mp4,m4a,3gp,3g2,mj2 @ 000001f407074680] corrupt input packet in stream 0
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 213, in encode_dvr
safe_log_info(f"FFmpeg: {text}", f"{Colors.GREEN}FFmpeg: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'FFmpeg: [mov,mp4,m4a,3gp,3g2,mj2 @ 000001f4070748c0] stream 1, offset 0xa89df24: partial file'
Arguments: ()
FFmpeg: [mov,mp4,m4a,3gp,3g2,mj2 @ 000001f4070748c0] stream 1, offset 0xa89df24: partial file
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 213, in encode_dvr
safe_log_info(f"FFmpeg: {text}", f"{Colors.GREEN}FFmpeg: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'FFmpeg: [in#0/mov,mp4,m4a,3gp,3g2,mj2 @ 000001f407074680] Error during demuxing: Invalid argument'
Arguments: ()
FFmpeg: [in#0/mov,mp4,m4a,3gp,3g2,mj2 @ 000001f407074680] Error during demuxing: Invalid argument
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 213, in encode_dvr
safe_log_info(f"FFmpeg: {text}", f"{Colors.GREEN}FFmpeg: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'FFmpeg: [hevc @ 000001f4070bd180] Invalid NAL unit size (41314 > 12486).'
Arguments: ()
FFmpeg: [hevc @ 000001f4070bd180] Invalid NAL unit size (41314 > 12486).
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 213, in encode_dvr
safe_log_info(f"FFmpeg: {text}", f"{Colors.GREEN}FFmpeg: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'FFmpeg: [hevc @ 000001f4070bd180] Error splitting the input into NAL units.'
Arguments: ()
FFmpeg: [hevc @ 000001f4070bd180] Error splitting the input into NAL units.
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 213, in encode_dvr
safe_log_info(f"FFmpeg: {text}", f"{Colors.GREEN}FFmpeg: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'FFmpeg: [vist#0:0/hevc @ 000001f40abd6c80] [dec:hevc @ 000001f40abd3440] Decoding error: Invalid data found when processing input'
Arguments: ()
FFmpeg: [vist#0:0/hevc @ 000001f40abd6c80] [dec:hevc @ 000001f40abd3440] Decoding error: Invalid data found when processing input
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 211, in encode_dvr
safe_log_info(f"Progress: {text}", f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'Progress: frame= 3388 fps= 79 q=1.0 size= 6144KiB time=00:00:56.41 bitrate= 892.1kbits/s speed=1.32x elapsed=0:00:42.64'
Arguments: ()
Progress: frame= 3388 fps= 79 q=1.0 size= 6144KiB time=00:00:56.41 bitrate= 892.1kbits/s speed=1.32x elapsed=0:00:42.64
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 213, in encode_dvr
safe_log_info(f"FFmpeg: {text}", f"{Colors.GREEN}FFmpeg: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'FFmpeg: [out#0/mp4 @ 000001f407093500] Error writing trailer: Invalid argument'
Arguments: ()
FFmpeg: [out#0/mp4 @ 000001f407093500] Error writing trailer: Invalid argument
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 213, in encode_dvr
safe_log_info(f"FFmpeg: {text}", f"{Colors.GREEN}FFmpeg: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'FFmpeg: [out#0/mp4 @ 000001f407093500] Error closing file: Invalid argument'
Arguments: ()
FFmpeg: [out#0/mp4 @ 000001f407093500] Error closing file: Invalid argument
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 213, in encode_dvr
safe_log_info(f"FFmpeg: {text}", f"{Colors.GREEN}FFmpeg: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'FFmpeg: [out#0/mp4 @ 000001f407093500] video:4026KiB audio:2232KiB subtitle:0KiB other streams:0KiB global headers:0KiB muxing overhead: unknown'
Arguments: ()
FFmpeg: [out#0/mp4 @ 000001f407093500] video:4026KiB audio:2232KiB subtitle:0KiB other streams:0KiB global headers:0KiB muxing overhead: unknown
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 211, in encode_dvr
safe_log_info(f"Progress: {text}", f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'Progress: frame= 3427 fps= 80 q=5.0 Lsize= 6144KiB time=00:00:57.06 bitrate= 882.0kbits/s speed=1.33x elapsed=0:00:42.75'
Arguments: ()
Progress: frame= 3427 fps= 80 q=5.0 Lsize= 6144KiB time=00:00:57.06 bitrate= 882.0kbits/s speed=1.33x elapsed=0:00:42.75
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 213, in encode_dvr
safe_log_info(f"FFmpeg: {text}", f"{Colors.GREEN}FFmpeg: {text}{Colors.ENDC}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'FFmpeg: Conversion failed!'
Arguments: ()
FFmpeg: Conversion failed!
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 238, in encode_dvr
safe_log_error(f"FFmpeg process failed with return code {return_code}",
File "R:\Videos\mux\encode_VOD.py", line 106, in safe_log_error
logging.error(message)
Message: 'FFmpeg process failed with return code -22'
Arguments: ()
FFmpeg process failed with return code -22
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 267, in <module>
safe_log_info(f"Processing file {i}/{total_files}: {file}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'Processing file 3/3: 2026-01-17 mimic_gameplay_2.mp4'
Arguments: ()
Processing file 3/3: 2026-01-17 mimic_gameplay_2.mp4
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 139, in encode_dvr
safe_log_info(f"Processing file: {input_path}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'Processing file: input\\2026-01-17 mimic_gameplay_2.mp4'
Arguments: ()
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 140, in encode_dvr
safe_log_info(f"Input size: {format_size(input_size)}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'Input size: 9.54 GB'
Arguments: ()
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 141, in encode_dvr
safe_log_info(f"Duration: {duration:.2f} seconds")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'Duration: 4031.07 seconds'
Arguments: ()
Processing file: input\2026-01-17 mimic_gameplay_2.mp4
Input size: 9.54 GB
Duration: 4031.07 seconds
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 150, in encode_dvr
safe_log_info(f"Stream {i} ({stream_type}):")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'Stream 0 (Video):'
Arguments: ()
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 152, in encode_dvr
safe_log_info(f" {key}: {value}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: ' codec_name: hevc'
Arguments: ()
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 152, in encode_dvr
safe_log_info(f" {key}: {value}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: ' width: 1920'
Arguments: ()
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 152, in encode_dvr
safe_log_info(f" {key}: {value}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: ' height: 1080'
Arguments: ()
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 152, in encode_dvr
safe_log_info(f" {key}: {value}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: ' r_frame_rate: 60/1'
Arguments: ()
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 150, in encode_dvr
safe_log_info(f"Stream {i} ({stream_type}):")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'Stream 1 (Audio):'
Arguments: ()
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 152, in encode_dvr
safe_log_info(f" {key}: {value}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: ' codec_name: aac'
Arguments: ()
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 152, in encode_dvr
safe_log_info(f" {key}: {value}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: ' channels: 2'
Arguments: ()
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 152, in encode_dvr
safe_log_info(f" {key}: {value}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: ' channel_layout: stereo'
Arguments: ()
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 152, in encode_dvr
safe_log_info(f" {key}: {value}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: ' r_frame_rate: 0/0'
Arguments: ()
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 150, in encode_dvr
safe_log_info(f"Stream {i} ({stream_type}):")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'Stream 2 (Audio):'
Arguments: ()
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 152, in encode_dvr
safe_log_info(f" {key}: {value}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: ' codec_name: aac'
Arguments: ()
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 152, in encode_dvr
safe_log_info(f" {key}: {value}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: ' channels: 2'
Arguments: ()
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 152, in encode_dvr
safe_log_info(f" {key}: {value}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: ' channel_layout: stereo'
Arguments: ()
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 152, in encode_dvr
safe_log_info(f" {key}: {value}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: ' r_frame_rate: 0/0'
Arguments: ()
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 157, in encode_dvr
safe_log_info(f"Skipping {input_path} - output already exists: {output_path}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'Skipping input\\2026-01-17 mimic_gameplay_2.mp4 - output already exists: output\\2026-01-17 mimic_gameplay_2.mp4'
Arguments: ()
--- Logging error ---
Traceback (most recent call last):
File "C:\Python314\Lib\logging\__init__.py", line 1155, in emit
self.flush()
~~~~~~~~~~^^
File "C:\Python314\Lib\logging\__init__.py", line 1137, in flush
self.stream.flush()
~~~~~~~~~~~~~~~~~^^
OSError: [Errno 22] Invalid argument
Call stack:
File "R:\Videos\mux\encode_VOD.py", line 269, in <module>
encode_dvr(input_file, output_dir, gpu)
File "R:\Videos\mux\encode_VOD.py", line 158, in encode_dvr
safe_log_info(f"Output size: {format_size(output_size)}")
File "R:\Videos\mux\encode_VOD.py", line 81, in safe_log_info
logging.info(message)
Message: 'Output size: 15.25 MB'
Arguments: ()
Skipping input\2026-01-17 mimic_gameplay_2.mp4 - output already exists
Exception ignored while finalizing file <_io.TextIOWrapper name='R:\\Videos\\mux\\logs\\encode_20260118_104450.log' mode='w' encoding='cp1252'>:
OSError: [Errno 22] Invalid argument
Press any key to continue . . .
---
_**Agent (model default, mode Agent)**_
---
The logging module prints "--- Logging error ---" to stderr when `flush()` fails, even though we catch it. Creating a custom logging handler that suppresses these errors:
---
<tool-use data-tool-type="read" data-tool-name="read_file">
<details><summary>Tool use: **read_file** • Read file: encode_VOD.py</summary>
</details>
</tool-use>
---
---
Creating a custom logging handler that suppresses flush errors and prevents the logging module from printing "--- Logging error ---":
---
<tool-use data-tool-type="write" data-tool-name="search_replace">
<details><summary>Tool use: **search_replace** • Edit file: encode_VOD.py</summary>
**Chunk 1**
Lines added: 41, lines removed: 7
```diff
@@ -28,16 +28,50 @@
print(f"{Colors.RED}Invalid selection. Please try again.{Colors.ENDC}")
+ # Custom file handler that silently handles I/O errors (for network shares)
+ class SafeFileHandler(logging.FileHandler):
+ """File handler that silently handles I/O errors during flush"""
+ def flush(self):
+ """Override flush to silently handle I/O errors"""
+ try:
+ super().flush()
+ except (OSError, IOError):
+ # Silently ignore I/O errors (network share issues)
+ pass
+ except Exception:
+ # Silently ignore all other errors during flush
+ pass
+
+ def emit(self, record):
+ """Override emit to handle errors gracefully"""
+ try:
+ super().emit(record)
+ except (OSError, IOError):
+ # Silently ignore I/O errors - we'll fall back to console output
+ self.handleError(record)
+ except Exception:
+ # Handle other errors
+ self.handleError(record)
+
+ def handleError(self, record):
+ """Override to prevent error messages from being printed"""
+ # Don't print "--- Logging error ---" messages
+ pass
+
# Set up logging
log_dir = "logs"
os.makedirs(log_dir, exist_ok=True)
log_file = os.path.join(log_dir, f"encode_{datetime.now().strftime('%Y%m%d_%H%M%S')}.log")
- # Configure logging with Windows-safe settings
- logging.basicConfig(
- filename=log_file,
- level=logging.INFO,
- format='%(asctime)s - %(levelname)s - %(message)s',
- filemode='w' # Explicitly set write mode
- )
+ # Configure logging with custom handler that handles network share errors
+ handler = SafeFileHandler(log_file, mode='w', encoding='utf-8')
+ handler.setLevel(logging.INFO)
+ formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s')
+ handler.setFormatter(formatter)
+
+ logger = logging.getLogger()
+ logger.setLevel(logging.INFO)
+ logger.addHandler(handler)
+ # Remove default handlers to avoid duplicate output
+ logger.handlers = [handler]
def get_file_info(input_file):
```
</details>
</tool-use>
---
<tool-use data-tool-type="generic" data-tool-name="read_lints">
<details>
<summary>Tool use: **read_lints** • Read lints for 1 file</summary>
Lint paths:
- `encode_VOD.py`
Lint results
**No lint errors found**
</details>
</tool-use>
---
---
The custom handler suppresses "--- Logging error ---" messages. The `safe_log` functions still ensure console output when logging fails. Verifying the implementation:
---
<tool-use data-tool-type="read" data-tool-name="read_file">
<details><summary>Tool use: **read_file** • Read file: encode_VOD.py</summary>
</details>
</tool-use>
---
---
The custom handler should suppress the "--- Logging error ---" messages. The `SafeFileHandler`:
1. Overrides `flush()` to catch I/O errors silently
2. Overrides `emit()` to catch errors during writing
3. Overrides `handleError()` to prevent error messages from being printed
This should prevent the logging module from printing those error messages to stderr. The `safe_log_info()` and `safe_log_error()` functions will still ensure console output when logging fails.
## Summary
The fix includes:
1. **`SafeFileHandler` class** — Custom logging handler that:
- Silently handles `OSError`/`IOError` during `flush()` (network share issues)
- Prevents "--- Logging error ---" messages from being printed
- Allows logging to continue even when the file can't be written
2. **Console fallback** — The `safe_log_*` functions ensure messages are always printed to console even when logging fails
When the network share has I/O issues:
- No "--- Logging error ---" messages will appear
- Logging attempts will fail silently
- Console output will continue to work
- The script will continue running
The console output you're seeing (like "FFmpeg: Packet corrupt", "Error during demuxing", etc.) will still appear, but without the logging error spam.
---
_**User (2026-01-18 05:55Z)**_
can you apply these changes to @encode_dvr_high.py as well?
---
_**Agent (model default, mode Agent)**_
---
Applying the same logging error handling changes to `encode_dvr_high.py`:
---
<tool-use data-tool-type="read" data-tool-name="read_file">
<details><summary>Tool use: **read_file** • Read file: encode_dvr_high.py</summary>
</details>
</tool-use>
---
---
Applying the same changes to `encode_dvr_high.py`:
---
<tool-use data-tool-type="write" data-tool-name="search_replace">
<details><summary>Tool use: **search_replace** • Edit file: encode_dvr_high.py</summary>
**Chunk 1**
Lines added: 42, lines removed: 1
```diff
@@ -27,9 +27,50 @@
print(f"{Colors.RED}Invalid selection. Please try again.{Colors.ENDC}")
+ # Custom file handler that silently handles I/O errors (for network shares)
+ class SafeFileHandler(logging.FileHandler):
+ """File handler that silently handles I/O errors during flush"""
+ def flush(self):
+ """Override flush to silently handle I/O errors"""
+ try:
+ super().flush()
+ except (OSError, IOError):
+ # Silently ignore I/O errors (network share issues)
+ pass
+ except Exception:
+ # Silently ignore all other errors during flush
+ pass
+
+ def emit(self, record):
+ """Override emit to handle errors gracefully"""
+ try:
+ super().emit(record)
+ except (OSError, IOError):
+ # Silently ignore I/O errors - we'll fall back to console output
+ self.handleError(record)
+ except Exception:
+ # Handle other errors
+ self.handleError(record)
+
+ def handleError(self, record):
+ """Override to prevent error messages from being printed"""
+ # Don't print "--- Logging error ---" messages
+ pass
+
# Set up logging
log_dir = "logs"
os.makedirs(log_dir, exist_ok=True)
log_file = os.path.join(log_dir, f"encode_{datetime.now().strftime('%Y%m%d_%H%M%S')}.log")
- logging.basicConfig(filename=log_file, level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s')
+
+ # Configure logging with custom handler that handles network share errors
+ handler = SafeFileHandler(log_file, mode='w', encoding='utf-8')
+ handler.setLevel(logging.INFO)
+ formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s')
+ handler.setFormatter(formatter)
+
+ logger = logging.getLogger()
+ logger.setLevel(logging.INFO)
+ logger.addHandler(handler)
+ # Remove default handlers to avoid duplicate output
+ logger.handlers = [handler]
def get_file_info(input_file):
```
</details>
</tool-use>
---
<tool-use data-tool-type="write" data-tool-name="search_replace">
<details><summary>Tool use: **search_replace** • Edit file: encode_dvr_high.py</summary>
**Chunk 1**
Lines added: 52, lines removed: undefined
```diff
@@ -109,4 +109,56 @@
return f"{size_bytes:.2f} TB"
+ def safe_log_info(message, print_msg=None):
+ """Safely log info message, ensuring console output even if logging fails"""
+ try:
+ logging.info(message)
+ except (OSError, IOError) as e:
+ # Logging failed (likely network share issue) - print to console
+ if print_msg is None:
+ print(f"{Colors.YELLOW}[Logging failed: {e}] {message}{Colors.ENDC}")
+ else:
+ print(print_msg)
+ print(f"{Colors.YELLOW}[Logging failed: {e}]{Colors.ENDC}")
+ return
+ except Exception as e:
+ # Other logging errors
+ if print_msg is None:
+ print(f"{Colors.YELLOW}[Logging error: {e}] {message}{Colors.ENDC}")
+ else:
+ print(print_msg)
+ print(f"{Colors.YELLOW}[Logging error: {e}]{Colors.ENDC}")
+ return
+
+ # Always print to console if message provided
+ if print_msg is not None:
+ print(print_msg)
+
+ def safe_log_error(message, print_msg=None):
+ """Safely log error message, ensuring console output even if logging fails"""
+ try:
+ logging.error(message)
+ except (OSError, IOError) as e:
+ # Logging failed (likely network share issue) - print to console
+ if print_msg is None:
+ print(f"{Colors.RED}[Logging failed: {e}] {message}{Colors.ENDC}")
+ else:
+ print(print_msg)
+ print(f"{Colors.RED}[Logging failed: {e}]{Colors.ENDC}")
+ return
+ except Exception as e:
+ # Other logging errors
+ if print_msg is None:
+ print(f"{Colors.RED}[Logging error: {e}] {message}{Colors.ENDC}")
+ else:
+ print(print_msg)
+ print(f"{Colors.RED}[Logging error: {e}]{Colors.ENDC}")
+ return
+
+ # Always print to console if message provided
+ if print_msg is not None:
+ print(print_msg)
+ else:
+ print(f"{Colors.RED}{message}{Colors.ENDC}")
+
def encode_dvr(input_file, output_dir, gpu):
input_path = Path(input_file)
```
</details>
</tool-use>
---
<tool-use data-tool-type="write" data-tool-name="search_replace">
<details><summary>Tool use: **search_replace** • Edit file: encode_dvr_high.py</summary>
**Chunk 1**
Lines added: 3, lines removed: 3
```diff
@@ -170,7 +170,7 @@
duration = float(file_info['format']['duration'])
- logging.info(f"Processing file: {input_path}")
- logging.info(f"Input size: {format_size(input_size)}")
- logging.info(f"Duration: {duration:.2f} seconds")
+ safe_log_info(f"Processing file: {input_path}")
+ safe_log_info(f"Input size: {format_size(input_size)}")
+ safe_log_info(f"Duration: {duration:.2f} seconds")
print(f"\n{Colors.BLUE}Processing file: {input_path}{Colors.ENDC}")
```
**Chunk 2**
Lines added: 5, lines removed: 5
```diff
@@ -181,19 +181,19 @@
for i, stream in enumerate(file_info.get('streams', [])):
stream_type = 'Video' if stream.get('codec_name', '').startswith('h') else 'Audio'
- logging.info(f"Stream {i} ({stream_type}):")
+ safe_log_info(f"Stream {i} ({stream_type}):")
for key, value in stream.items():
- logging.info(f" {key}: {value}")
+ safe_log_info(f" {key}: {value}")
# Skip if output file already exists
if output_path.exists():
output_size = output_path.stat().st_size
- logging.info(f"Skipping {input_path} - output already exists: {output_path}")
- logging.info(f"Output size: {format_size(output_size)}")
+ safe_log_info(f"Skipping {input_path} - output already exists: {output_path}")
+ safe_log_info(f"Output size: {format_size(output_size)}")
print(f"{Colors.YELLOW}Skipping {input_path} - output already exists{Colors.ENDC}")
return
# Get audio labels
audio_labels = get_audio_labels(str(input_path))
- logging.info(f"Audio labels: {audio_labels}")
+ safe_log_info(f"Audio labels: {audio_labels}")
# FFmpeg command with NVIDIA HEVC encoder and maximum quality
```
</details>
</tool-use>
---
<tool-use data-tool-type="write" data-tool-name="search_replace">
<details><summary>Tool use: **search_replace** • Edit file: encode_dvr_high.py</summary>
**Chunk 1**
Lines added: 17, lines removed: 6
```diff
@@ -232,10 +232,21 @@
# Log FFmpeg output in real-time
while True:
- output = process.stderr.readline()
- if output == '' and process.poll() is not None:
- break
- if output:
- logging.info(f"FFmpeg: {output.strip()}")
- print(f"{Colors.PURPLE}FFmpeg: {output.strip()}{Colors.ENDC}")
+ try:
+ output = process.stderr.readline()
+ if output == '' and process.poll() is not None:
+ break
+ if output:
+ text = output.strip()
+ if text.startswith('frame=') or ' fps=' in text:
+ safe_log_info(f"Progress: {text}", f"{Colors.PURPLE}Progress: {text}{Colors.ENDC}")
+ else:
+ safe_log_info(f"FFmpeg: {text}", f"{Colors.GREEN}FFmpeg: {text}{Colors.ENDC}")
+ except (OSError, IOError) as e:
+ # I/O error reading from pipe - log it
+ safe_log_error(f"I/O error reading FFmpeg output: {e}")
+ break
+ except Exception as e:
+ # Unexpected error
+ safe_log_error(f"Unexpected error processing FFmpeg output: {e}")
if process.returncode == 0:
```
</details>
</tool-use>
---
<tool-use data-tool-type="write" data-tool-name="search_replace">
<details><summary>Tool use: **search_replace** • Edit file: encode_dvr_high.py</summary>
**Chunk 1**
Lines added: 13, lines removed: 9
```diff
@@ -256,16 +256,20 @@
compression_ratio = input_size / output_size if output_size &gt; 0 else 0
- logging.info(f"Successfully encoded: {output_path}")
- logging.info(f"Output size: {format_size(output_size)}")
- logging.info(f"Compression ratio: {compression_ratio:.2f}x")
- print(f"{Colors.GREEN}Successfully encoded: {output_path}{Colors.ENDC}")
- print(f"Compression ratio: {compression_ratio:.2f}x")
+ safe_log_info(f"Successfully encoded: {output_path}", f"{Colors.GREEN}Successfully encoded: {output_path}{Colors.ENDC}")
+ safe_log_info(f"Output size: {format_size(output_size)}")
+ safe_log_info(f"Compression ratio: {compression_ratio:.2f}x", f"Compression ratio: {compression_ratio:.2f}x")
else:
- logging.error(f"FFmpeg process failed with return code {process.returncode}")
- print(f"{Colors.RED}FFmpeg process failed with return code {process.returncode}{Colors.ENDC}")
+ # Convert Windows error code to signed integer if needed
+ return_code = process.returncode
+ if return_code &gt; 2147483647: # If it's a large unsigned int, convert to signed
+ return_code = return_code - 4294967296
+ safe_log_error(f"FFmpeg process failed with return code {return_code}",
+ f"{Colors.RED}FFmpeg process failed with return code {return_code}{Colors.ENDC}")
except subprocess.CalledProcessError as e:
- logging.error(f"Error encoding {input_path}: {e}")
- print(f"{Colors.RED}Error encoding {input_path}: {e}{Colors.ENDC}")
+ safe_log_error(f"Error encoding {input_path}: {e}", f"{Colors.RED}Error encoding {input_path}: {e}{Colors.ENDC}")
+ except Exception as e:
+ safe_log_error(f"Unexpected error encoding {input_path}: {type(e).__name__}: {e}",
+ f"{Colors.RED}Unexpected error encoding {input_path}: {e}{Colors.ENDC}")
if __name__ == "__main__":
```
</details>
</tool-use>
---
<tool-use data-tool-type="write" data-tool-name="search_replace">
<details><summary>Tool use: **search_replace** • Edit file: encode_dvr_high.py</summary>
**Chunk 1**
Lines added: 1, lines removed: 1
```diff
@@ -276,5 +276,5 @@
# Get GPU selection
gpu = get_gpu_selection()
- logging.info(f"Selected GPU: {gpu}")
+ safe_log_info(f"Selected GPU: {gpu}")
input_dir = "input"
```
**Chunk 2**
Lines added: 3, lines removed: 5
```diff
@@ -287,13 +287,11 @@
if total_files == 0:
- logging.info("No files to process in input directory")
- print(f"{Colors.YELLOW}No files to process in input directory{Colors.ENDC}")
+ safe_log_info("No files to process in input directory", f"{Colors.YELLOW}No files to process in input directory{Colors.ENDC}")
else:
- logging.info(f"Found {total_files} files to process")
- print(f"{Colors.BLUE}Found {total_files} files to process{Colors.ENDC}")
+ safe_log_info(f"Found {total_files} files to process", f"{Colors.BLUE}Found {total_files} files to process{Colors.ENDC}")
for i, file in enumerate(files, 1):
input_file = os.path.join(input_dir, file)
- logging.info(f"Processing file {i}/{total_files}: {file}")
+ safe_log_info(f"Processing file {i}/{total_files}: {file}")
print(f"\n{Colors.BLUE}Processing file {i}/{total_files}: {file}{Colors.ENDC}")
encode_dvr(input_file, output_dir, gpu)
```
</details>
</tool-use>
---
<tool-use data-tool-type="generic" data-tool-name="read_lints">
<details>
<summary>Tool use: **read_lints** • Read lints for 1 file</summary>
Lint paths:
- `encode_dvr_high.py`
Lint results
**No lint errors found**
</details>
</tool-use>
---
---
Applied the same logging error handling changes to `encode_dvr_high.py`. Updates:
## Changes Applied
1. **`SafeFileHandler` class** — Custom logging handler that silently handles I/O errors from network shares
2. **Custom logging setup** — Replaced `logging.basicConfig` with the custom handler configuration
3. **`safe_log_info()` and `safe_log_error()` functions** — Ensure console output even when logging fails
4. **Replaced all logging calls** — All `logging.info()` and `logging.error()` calls now use the safe wrappers
5. **Improved FFmpeg output handling** — Better error handling in the output reading loop, with distinction between progress and regular FFmpeg messages
6. **Error code handling** — Converts Windows unsigned error codes to signed integers for readability
7. **Exception handling** — Added catch-all exception handler for unexpected errors
Both `encode_VOD.py` and `encode_dvr_high.py` now have the same error handling:
- No "--- Logging error ---" messages will appear
- Logging failures are handled silently
- Console output always works
- Better error reporting for FFmpeg failures
The scripts should handle network share I/O issues without spamming error messages.
---
_**User (2026-01-18 05:55Z)**_
what does this one mean?
Progress: frame=876523 fps=136 q=10.0 size=15938816KiB time=04:03:28.66 bitrate=8937.9kbits/s speed=2.26x elapsed=1:47:46.47
FFmpeg: [hevc @ 000002bde6a85b80] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde6a85b80] Error splitting the input into NAL units.
FFmpeg: [hevc @ 000002bde477a540] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477a540] Error splitting the input into NAL units.
FFmpeg: [hevc @ 000002bde477a900] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde477a900] Error splitting the input into NAL units.
FFmpeg: [hevc @ 000002bde477acc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477acc0] Error splitting the input into NAL units.
FFmpeg: [hevc @ 000002bde477b200] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477b200] Error splitting the input into NAL units.
FFmpeg: [hevc @ 000002bde4bdccc0] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde4bdccc0] Error splitting the input into NAL units.
FFmpeg: [hevc @ 000002bde474bf00] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474bf00] Error splitting the input into NAL units.
FFmpeg: [hevc @ 000002bde474c640] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474c640] Error splitting the input into NAL units.
FFmpeg: [hevc @ 000002bde474c2c0] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde474c2c0] Error splitting the input into NAL units.
FFmpeg: [hevc @ 000002bde474ca00] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474ca00] Error splitting the input into NAL units.
FFmpeg: [hevc @ 000002bde474cdc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474cdc0] Error splitting the input into NAL units.
FFmpeg: [hevc @ 000002bde4880e80] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde4880e80] Error splitting the input into NAL units.
FFmpeg: [hevc @ 000002bde472f540] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde472f540] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: Last message repeated 1 times
FFmpeg: [hevc @ 000002bde6a85b80] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde6a85b80] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477a540] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde477a540] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477a900] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477a900] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477acc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477acc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477b200] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde477b200] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde4bdccc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde4bdccc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474bf00] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474bf00] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474c640] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde474c640] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474c2c0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474c2c0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474ca00] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474ca00] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474cdc0] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde474cdc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde4880e80] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde4880e80] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde472f540] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde472f540] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde6a85b80] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde6a85b80] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477a540] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477a540] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477a900] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477a900] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477acc0] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde477acc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477b200] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477b200] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde4bdccc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde4bdccc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474bf00] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde474bf00] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474c640] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474c640] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474c2c0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474c2c0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474ca00] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde474ca00] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474cdc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474cdc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde4880e80] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde4880e80] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde472f540] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde472f540] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde6a85b80] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde6a85b80] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477a540] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477a540] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477a900] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde477a900] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477acc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477acc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477b200] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477b200] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde4bdccc0] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde4bdccc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474bf00] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474bf00] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474c640] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474c640] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474c2c0] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde474c2c0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474ca00] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474ca00] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474cdc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474cdc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde4880e80] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde4880e80] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde472f540] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde472f540] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde6a85b80] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde6a85b80] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477a540] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde477a540] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477a900] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477a900] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477acc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477acc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477b200] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde477b200] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde4bdccc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde4bdccc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474bf00] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474bf00] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474c640] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde474c640] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474c2c0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474c2c0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474ca00] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474ca00] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474cdc0] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde474cdc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde4880e80] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde4880e80] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde472f540] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde472f540] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde6a85b80] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde6a85b80] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477a540] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477a540] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477a900] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477a900] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477acc0] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde477acc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477b200] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477b200] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde4bdccc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde4bdccc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474bf00] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde474bf00] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474c640] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474c640] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474c2c0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474c2c0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474ca00] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde474ca00] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474cdc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474cdc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde4880e80] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde4880e80] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde472f540] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde472f540] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde6a85b80] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde6a85b80] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477a540] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477a540] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477a900] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde477a900] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477acc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477acc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477b200] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477b200] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde4bdccc0] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde4bdccc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474bf00] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474bf00] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474c640] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474c640] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474c2c0] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde474c2c0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474ca00] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474ca00] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474cdc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474cdc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde4880e80] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde4880e80] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde472f540] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde472f540] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde6a85b80] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde6a85b80] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477a540] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde477a540] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477a900] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477a900] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477acc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477acc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477b200] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde477b200] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde4bdccc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde4bdccc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474bf00] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474bf00] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474c640] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde474c640] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474c2c0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474c2c0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474ca00] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474ca00] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474cdc0] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde474cdc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde4880e80] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde4880e80] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde472f540] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde472f540] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde6a85b80] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde6a85b80] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477a540] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477a540] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477a900] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477a900] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477acc0] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde477acc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477b200] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477b200] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde4bdccc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde4bdccc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474bf00] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde474bf00] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474c640] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474c640] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474c2c0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474c2c0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474ca00] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde474ca00] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474cdc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474cdc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde4880e80] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde4880e80] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde472f540] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde472f540] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde6a85b80] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde6a85b80] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477a540] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477a540] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477a900] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde477a900] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477acc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477acc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477b200] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477b200] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde4bdccc0] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde4bdccc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474bf00] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474bf00] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474c640] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474c640] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474c2c0] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde474c2c0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474ca00] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474ca00] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474cdc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474cdc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde4880e80] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde4880e80] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde472f540] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde472f540] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde6a85b80] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde6a85b80] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477a540] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde477a540] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477a900] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477a900] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477acc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477acc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477b200] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde477b200] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde4bdccc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde4bdccc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474bf00] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474bf00] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474c640] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde474c640] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474c2c0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474c2c0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474ca00] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474ca00] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474cdc0] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde474cdc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde4880e80] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde4880e80] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde472f540] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde472f540] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde6a85b80] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde6a85b80] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477a540] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477a540] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477a900] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477a900] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477acc0] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde477acc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477b200] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477b200] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde4bdccc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde4bdccc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474bf00] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde474bf00] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474c640] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474c640] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474c2c0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474c2c0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474ca00] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde474ca00] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474cdc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474cdc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde4880e80] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde4880e80] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde472f540] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde472f540] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde6a85b80] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde6a85b80] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477a540] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477a540] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477a900] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde477a900] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477acc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477acc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477b200] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477b200] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde4bdccc0] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde4bdccc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474bf00] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474bf00] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474c640] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474c640] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474c2c0] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde474c2c0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474ca00] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474ca00] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474cdc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474cdc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde4880e80] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde4880e80] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde472f540] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde472f540] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde6a85b80] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde6a85b80] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477a540] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde477a540] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477a900] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477a900] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477acc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477acc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477b200] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde477b200] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde4bdccc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde4bdccc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474bf00] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474bf00] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474c640] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde474c640] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474c2c0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474c2c0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474ca00] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474ca00] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474cdc0] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde474cdc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde4880e80] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde4880e80] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde472f540] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde472f540] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde6a85b80] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde6a85b80] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477a540] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477a540] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477a900] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477a900] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477acc0] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde477acc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477b200] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477b200] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde4bdccc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde4bdccc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474bf00] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde474bf00] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474c640] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474c640] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474c2c0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474c2c0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474ca00] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde474ca00] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474cdc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474cdc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde4880e80] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde4880e80] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde472f540] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde472f540] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde6a85b80] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde6a85b80] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477a540] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477a540] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477a900] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde477a900] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477acc0] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477acc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde477b200] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde477b200] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde4bdccc0] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde4bdccc0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474bf00] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474bf00] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474c640] Invalid NAL unit size (0 > 41664).
FFmpeg: [hevc @ 000002bde474c640] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Error submitting packet to decoder: Invalid data found when processing input
FFmpeg: [hevc @ 000002bde474c2c0] Invalid NAL unit size (0 > 41663).
FFmpeg: [hevc @ 000002bde474c2c0] Error splitting the input into NAL units.
FFmpeg: [vist#0:0/hevc @ 000002bde6a86c80] [dec:hevc @ 000002bde6a83440] Decoding error: Invalid data found when processing input
FFmpeg: Last message repeated 11 times
FFmpeg: [out#0/mp4 @ 000002bde4723500] video:15368519KiB audio:570848KiB subtitle:0KiB other streams:0KiB global headers:0KiB muxing overhead: 0.208073%
Progress: frame=876618 fps=136 q=5.0 Lsize=15972533KiB time=04:03:30.25 bitrate=8955.8kbits/s speed=2.26x elapsed=1:47:48.14
Successfully encoded: output\2026-01-17 mimic_gameplay_1.mp4
Compression ratio: 2.27x
Processing file 3/3: 2026-01-17 mimic_gameplay_2.mp4
Processing file: input\2026-01-17 mimic_gameplay_2.mp4
Input size: 9.54 GB
Duration: 4031.07 seconds
Skipping input\2026-01-17 mimic_gameplay_2.mp4 - output already exists
Press any key to continue . . .
---
_**Agent (model default, mode Ask)**_
---
These errors indicate FFmpeg encountered corrupted or incomplete video data while reading from the network share.
## What the errors mean
1. **`Invalid NAL unit size (0 > 41664)`** — The HEVC decoder expected a NAL unit of ~41KB but got 0 bytes, indicating a failed or incomplete read.
2. **`Error splitting the input into NAL units`** — The decoder couldnt parse the stream because the data is corrupted or incomplete.
3. **`Error submitting packet to decoder: Invalid data found when processing input`** — The decoder rejected the corrupted packet.
## Root cause
This points to I/O issues on the network share:
- Network interruptions/timeouts causing incomplete reads
- Buffer underruns when the network cant keep up
- Share host overload leading to data corruption
- File system issues on the share
The size of 0 in "Invalid NAL unit size (0 > 41664)" suggests FFmpeg tried to read data but got nothing, which is consistent with network I/O failures.
## Why it still succeeded
The encoding completed because:
- FFmpeg has error resilience and can skip corrupted frames
- The errors were localized; most of the file was readable
- The encoder continued processing valid frames
## Solutions
1. Copy files locally first — Copy from the network share to local storage, then encode
2. Use error resilience flags — Add `-err_detect ignore_err` to FFmpeg to be more tolerant
3. Fix network/share issues — Improve network stability, reduce load on the share host, or use a faster connection
4. Verify source files — Check if the source file itself is corrupted
The errors are warnings about data quality, not fatal failures. The output file was created, but some frames may be missing or corrupted due to the I/O issues.
---