diff --git a/.cargo/config.toml b/.cargo/config.toml
new file mode 100644
index 0000000000000000000000000000000000000000..48c3b212edabd3bf135f3b6f491a8c38540d1362
--- /dev/null
+++ b/.cargo/config.toml
@@ -0,0 +1,6 @@
+
+#[source.crates-io]
+#replace-with = "vendored-sources"
+
+#[source.vendored-sources]
+#directory = "mp4"
diff --git a/CHANGELOG b/CHANGELOG
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
new file mode 100644
index 0000000000000000000000000000000000000000..d30f01663492a4bbb32d4dc6834b40921b800be8
--- /dev/null
+++ b/CONTRIBUTING.md
@@ -0,0 +1,2 @@
+# Contributions #
+...are welcome later.
\ No newline at end of file
diff --git a/Cargo.lock b/Cargo.lock
index 1d06ad083cc8dc771fcb1d2318194f75c85dda3d..53bd40c5681e3997250bfae4054720a2920d93b9 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -29,9 +29,9 @@ dependencies = [
 
 [[package]]
 name = "sprintf"
-version = "0.4.0"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "46781e6f401f1557f5b4560284baf7268bd9ca531e9e387120a8695fe5bc1fb1"
+checksum = "39b60413e681681e22dfe3966674082c075c5f6ed73c3900b95dd19eb9e0181d"
 dependencies = [
  "thiserror",
 ]
diff --git a/Cargo.toml b/Cargo.toml
index c69912c63f2bbe0478204ab9f77f363718166647..1fdedb9acf205f69f831ece737ca6eca2485c58c 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -1,7 +1,62 @@
 [package]
 name = "mp4duration2"
-version = "0.1.0"
+# build = "src/build.rs"
+# mods = "src/mods.rs"
+authors = ["Abigoven Vandrhall <abigoven@tutanota.com>"]
+categories = ["command-line-utilities", "mediafiles", "mp4", "m4a"]
+description = "A Rust application that collects the durations of some given MP4 files and shows them in a human readable format."
 edition = "2021"
+exclude = ["/devtools/*", "/Justfile", "/Vagrantfile", "/screenshots.png"]
+homepage = "https://www.opencode.net/abigoven/"
+license = "MIT"
+# Don't publish on crates.io!
+publish = false
+repository = "https://www.opencode.net/abigoven/mp4duration"
+version = "0.1.0"
+
+[[bin]]
+name = "mp4duration2"
+
+#[lib]
+#crate-type = ["rlib", "staticlib", "cdylib"]
+
+[profile.dev]
+debug = true
+debug-assertions = true
+incremental = false
+lto = false
+opt-level = 0
+overflow-checks = true
+panic = "abort"
+
+[profile.release]
+codegen-units = 1
+debug = false
+debug-assertions = false
+incremental = false
+lto = true
+opt-level = 3
+overflow-checks = true
+panic = "abort"
+
+[lints.rust]
+unsafe_code = "forbid"
+unstable_features = "forbid"
+dead_code = "allow"
+unused_variables = "forbid"
+unused_mut = "forbid"
+
+[lints.clippy]
+todo = "forbid"
+empty_loop = "allow"
+infinite_loop = "deny"
+mem_forget = "deny"
+disallowed_methods = "warn"
+
+# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
 
+# https://github.com/alfg/mp4-rust
+# https://crates.io/crates/mp4
+# https://docs.rs/mp4/
 [dependencies]
-sprintf = "0.4.0"
+sprintf = "0.3.0"
diff --git a/README.md b/README.md
index 57fd007ac02dfde648a93d4152a46bfdd56d2ae5..d04af5016055941fb9662e8a5229f87d00601351 100644
--- a/README.md
+++ b/README.md
@@ -1,20 +1,29 @@
 # MP4-Duration 2 #
 
-[MP4-Duration 2](https://www.opencode.net/abigoven/mp4duration2) (is a similar tool to [MP3-Duration](https://www.opencode.net/abigoven/mp3duration) for MP3-files) is a Rust CLI ("Command Line Interface") application that collects the durations of some given MP4 files and shows them in a human readable format. It uses my own functionality without usage of mp4 crate.
+[MP4-Duration 2](https://www.opencode.net/abigoven/mp4duration2) (is a
+similar tool to
+[MP3-Duration](https://www.opencode.net/abigoven/mp3duration) for
+MP3-files) is a Rust CLI ("Command Line Interface") application that
+collects the durations of some given MP4 files and shows them in a human
+readable format. It uses my own functionality without usage of mp4
+crate.
 
 ## Installation ##
-The executable files for 32bit-versions are stored in i686-\* and 64bit-versions are stored in x86_64-\*
+The executable files for 32bit-versions are stored in i686-\* and
+64bit-versions are stored in x86_64-\*
 
 Download the fitting binary (32/64bit) for your Linux distribution.
-Copy the binary to /usr/local/bin/ for local users or and not additionally to /usr/bin/ for systemwide usage.
-<br/>*Do copy to one path only and not to both!*
+Copy the binary to /usr/local/bin/ for local users or and not
+additionally to /usr/bin/ for systemwide usage.<br/>
+*Do copy to one path only and not to both!*
 
 ```bash
 cp -fv -- mp4duration2 /usr/local/bin/
 sudo cp -fv -- mp4duration2 /usr/bin/
 ```
 
-Download the fitting Windows-exe for your Windows version (32/64bit) and copy it to %PROGRAMFILES%.
+Download the fitting Windows-exe for your Windows version (32/64bit) and
+copy it to %PROGRAMFILES%.
 
 ```
 COPY /B mp4duration2.exe %PROGRAMFILES%
@@ -25,10 +34,15 @@ COPY /B mp4duration2.exe %PROGRAMFILES%
 mp4duration2 [-n] [-s] <filename(s)>
 ```
 ---
-### Test Output if filenames were given ###
+### Test Outputs ###
 ```
+mp4duration2
+
+Usage: mp4duration2 [-n] [-s] <filename(s)>
+
+---
+
 mp4duration2 *Directors_Cut*.mp4
---------------------------------
 
 00:01:33:56     01_Abigoven_Vandrhall_Q.U.B.E._Directors_Cut_Q.U.B.E._Directors_Cut_01_UYHHihhPI6g.mp4
 00:00:37:56     02_Abigoven_Vandrhall_Q.U.B.E._Directors_Cut_Q.U.B.E._Directors_Cut_02_V1fmPCYQpT4.mp4
@@ -39,8 +53,9 @@ mp4duration2 *Directors_Cut*.mp4
 00:00:37:45     Q_U_B_E_Directors_Cut_03.mp4
 00:01:11:44     Q_U_B_E_Directors_Cut_04.mp4
 
+---
+
 mp4duration2 -n *Directors_Cut*.mp4
------------------------------------
 
 1/8     00:01:33:56     01_Abigoven_Vandrhall_Q.U.B.E._Directors_Cut_Q.U.B.E._Directors_Cut_01_UYHHihhPI6g.mp4
 2/8     00:00:37:56     02_Abigoven_Vandrhall_Q.U.B.E._Directors_Cut_Q.U.B.E._Directors_Cut_02_V1fmPCYQpT4.mp4
@@ -52,7 +67,6 @@ mp4duration2 -n *Directors_Cut*.mp4
 8/8     00:01:11:44     Q_U_B_E_Directors_Cut_04.mp4
 
 mp4duration2 -s *Directors_Cut*.mp4
------------------------------------
 
 00:01:33:56     01_Abigoven_Vandrhall_Q.U.B.E._Directors_Cut_Q.U.B.E._Directors_Cut_01_UYHHihhPI6g.mp4
 00:00:37:56     02_Abigoven_Vandrhall_Q.U.B.E._Directors_Cut_Q.U.B.E._Directors_Cut_02_V1fmPCYQpT4.mp4
@@ -65,7 +79,6 @@ mp4duration2 -s *Directors_Cut*.mp4
 all     00:08:02:42
 
 mp4duration2 -n -s *Directors_Cut*.mp4
---------------------------------------
 
 1/8     00:01:33:56     01_Abigoven_Vandrhall_Q.U.B.E._Directors_Cut_Q.U.B.E._Directors_Cut_01_UYHHihhPI6g.mp4
 2/8     00:00:37:56     02_Abigoven_Vandrhall_Q.U.B.E._Directors_Cut_Q.U.B.E._Directors_Cut_02_V1fmPCYQpT4.mp4
@@ -77,16 +90,9 @@ mp4duration2 -n -s *Directors_Cut*.mp4
 8/8     00:01:11:44     Q_U_B_E_Directors_Cut_04.mp4
 all     00:08:02:42
 ```
-If you are interested in the video files then you can [watch them here on Peertube](https://vid.northbound.online/a/abigoven/video-channels).
-
-### Output if no filenames were given ###
+If you are interested in the video files then you can [watch them here
+on [Peertube](https://vid.northbound.online/a/abigoven/video-channels).
 
-```
-mp4duration2
-------------
-
-Usage: mp4duration2 [-n] [-s] <filename(s)>
-```
 ---
 
 ## License ##
diff --git a/doc/mp4duration2/fn.f_convertsecs.html b/doc/mp4duration2/fn.f_convertsecs.html
index 2a96f5814a51f19c1c50c03ffce56a56999f511c..f221b56f8ddd5cdcf5eaffb617624962183a0178 100644
--- a/doc/mp4duration2/fn.f_convertsecs.html
+++ b/doc/mp4duration2/fn.f_convertsecs.html
@@ -1 +1 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `f_convertsecs` fn in crate `mp4duration2`."><title>f_convertsecs in mp4duration2 - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970d388.woff2,SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2,SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-b0742ba02757f159.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="mp4duration2" data-themes="" data-resource-suffix="" data-rustdoc-version="1.83.0 (90b35a623 2024-11-26)" data-channel="1.83.0" data-search-js="search-f0d225181b97f9a4.js" data-settings-js="settings-805db61a62df4bd2.js" ><script src="../static.files/storage-1d39b6787ed640ff.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-f070b9041d14864c.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-0111fcff984fae8f.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc fn"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle" title="show sidebar"></button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../mp4duration2/index.html">mp4duration2</a><span class="version">0.1.0</span></h2></div><div class="sidebar-elems"><div id="rustdoc-modnav"></div></div></nav><div class="sidebar-resizer"></div><main><div class="width-limiter"><rustdoc-search></rustdoc-search><section id="main-content" class="content"><div class="main-heading"><span class="rustdoc-breadcrumbs"><a href="index.html">mp4duration2</a></span><h1>Function <span class="fn">f_convertsecs</span><button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../src/mp4duration2/main.rs.html#90-109">source</a> </span></div><pre class="rust item-decl"><code>pub(crate) fn f_convertsecs(seconds: <a class="primitive" href="https://doc.rust-lang.org/1.83.0/std/primitive.u64.html">u64</a>)</code></pre></section></div></main></body></html>
\ No newline at end of file
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `f_convertsecs` fn in crate `mp4duration2`."><title>f_convertsecs in mp4duration2 - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970d388.woff2,SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2,SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-b0742ba02757f159.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="mp4duration2" data-themes="" data-resource-suffix="" data-rustdoc-version="1.83.0 (90b35a623 2024-11-26)" data-channel="1.83.0" data-search-js="search-f0d225181b97f9a4.js" data-settings-js="settings-805db61a62df4bd2.js" ><script src="../static.files/storage-1d39b6787ed640ff.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-f070b9041d14864c.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-0111fcff984fae8f.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc fn"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle" title="show sidebar"></button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../mp4duration2/index.html">mp4duration2</a><span class="version">0.1.0</span></h2></div><div class="sidebar-elems"><div id="rustdoc-modnav"></div></div></nav><div class="sidebar-resizer"></div><main><div class="width-limiter"><rustdoc-search></rustdoc-search><section id="main-content" class="content"><div class="main-heading"><span class="rustdoc-breadcrumbs"><a href="index.html">mp4duration2</a></span><h1>Function <span class="fn">f_convertsecs</span><button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../src/mp4duration2/main.rs.html#92-111">source</a> </span></div><pre class="rust item-decl"><code>pub(crate) fn f_convertsecs(seconds: <a class="primitive" href="https://doc.rust-lang.org/1.83.0/std/primitive.u64.html">u64</a>)</code></pre></section></div></main></body></html>
\ No newline at end of file
diff --git a/doc/mp4duration2/fn.get_video_duration.html b/doc/mp4duration2/fn.get_video_duration.html
index a8933a3586217fb8bf3cb3ee6f7bead106342bb8..f2b26f505617fc9cf5319b471e0ed889abb8d652 100644
--- a/doc/mp4duration2/fn.get_video_duration.html
+++ b/doc/mp4duration2/fn.get_video_duration.html
@@ -1 +1 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `get_video_duration` fn in crate `mp4duration2`."><title>get_video_duration in mp4duration2 - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970d388.woff2,SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2,SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-b0742ba02757f159.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="mp4duration2" data-themes="" data-resource-suffix="" data-rustdoc-version="1.83.0 (90b35a623 2024-11-26)" data-channel="1.83.0" data-search-js="search-f0d225181b97f9a4.js" data-settings-js="settings-805db61a62df4bd2.js" ><script src="../static.files/storage-1d39b6787ed640ff.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-f070b9041d14864c.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-0111fcff984fae8f.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc fn"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle" title="show sidebar"></button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../mp4duration2/index.html">mp4duration2</a><span class="version">0.1.0</span></h2></div><div class="sidebar-elems"><div id="rustdoc-modnav"></div></div></nav><div class="sidebar-resizer"></div><main><div class="width-limiter"><rustdoc-search></rustdoc-search><section id="main-content" class="content"><div class="main-heading"><span class="rustdoc-breadcrumbs"><a href="index.html">mp4duration2</a></span><h1>Function <span class="fn">get_video_duration</span><button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../src/mp4duration2/main.rs.html#21-88">source</a> </span></div><pre class="rust item-decl"><code>pub fn get_video_duration(path: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.83.0/std/primitive.str.html">str</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.83.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.83.0/std/primitive.f64.html">f64</a>, <a class="enum" href="enum.Mp4Error.html" title="enum mp4duration2::Mp4Error">Mp4Error</a>&gt;</code></pre></section></div></main></body></html>
\ No newline at end of file
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `get_video_duration` fn in crate `mp4duration2`."><title>get_video_duration in mp4duration2 - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970d388.woff2,SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2,SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-b0742ba02757f159.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="mp4duration2" data-themes="" data-resource-suffix="" data-rustdoc-version="1.83.0 (90b35a623 2024-11-26)" data-channel="1.83.0" data-search-js="search-f0d225181b97f9a4.js" data-settings-js="settings-805db61a62df4bd2.js" ><script src="../static.files/storage-1d39b6787ed640ff.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-f070b9041d14864c.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-0111fcff984fae8f.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc fn"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle" title="show sidebar"></button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../mp4duration2/index.html">mp4duration2</a><span class="version">0.1.0</span></h2></div><div class="sidebar-elems"><div id="rustdoc-modnav"></div></div></nav><div class="sidebar-resizer"></div><main><div class="width-limiter"><rustdoc-search></rustdoc-search><section id="main-content" class="content"><div class="main-heading"><span class="rustdoc-breadcrumbs"><a href="index.html">mp4duration2</a></span><h1>Function <span class="fn">get_video_duration</span><button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../src/mp4duration2/main.rs.html#21-90">source</a> </span></div><pre class="rust item-decl"><code>pub fn get_video_duration(path: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.83.0/std/primitive.str.html">str</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.83.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.83.0/std/primitive.f64.html">f64</a>, <a class="enum" href="enum.Mp4Error.html" title="enum mp4duration2::Mp4Error">Mp4Error</a>&gt;</code></pre></section></div></main></body></html>
\ No newline at end of file
diff --git a/doc/mp4duration2/fn.main.html b/doc/mp4duration2/fn.main.html
index d121ba673a0c3459b55a0d0ce11d9728fe26d697..731caa6dfc103d4f8448b4b0ddfaad4989d6ca78 100644
--- a/doc/mp4duration2/fn.main.html
+++ b/doc/mp4duration2/fn.main.html
@@ -1 +1 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `main` fn in crate `mp4duration2`."><title>main in mp4duration2 - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970d388.woff2,SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2,SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-b0742ba02757f159.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="mp4duration2" data-themes="" data-resource-suffix="" data-rustdoc-version="1.83.0 (90b35a623 2024-11-26)" data-channel="1.83.0" data-search-js="search-f0d225181b97f9a4.js" data-settings-js="settings-805db61a62df4bd2.js" ><script src="../static.files/storage-1d39b6787ed640ff.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-f070b9041d14864c.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-0111fcff984fae8f.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc fn"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle" title="show sidebar"></button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../mp4duration2/index.html">mp4duration2</a><span class="version">0.1.0</span></h2></div><div class="sidebar-elems"><div id="rustdoc-modnav"></div></div></nav><div class="sidebar-resizer"></div><main><div class="width-limiter"><rustdoc-search></rustdoc-search><section id="main-content" class="content"><div class="main-heading"><span class="rustdoc-breadcrumbs"><a href="index.html">mp4duration2</a></span><h1>Function <span class="fn">main</span><button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../src/mp4duration2/main.rs.html#111-196">source</a> </span></div><pre class="rust item-decl"><code>pub(crate) fn main()</code></pre></section></div></main></body></html>
\ No newline at end of file
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `main` fn in crate `mp4duration2`."><title>main in mp4duration2 - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970d388.woff2,SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2,SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-b0742ba02757f159.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="mp4duration2" data-themes="" data-resource-suffix="" data-rustdoc-version="1.83.0 (90b35a623 2024-11-26)" data-channel="1.83.0" data-search-js="search-f0d225181b97f9a4.js" data-settings-js="settings-805db61a62df4bd2.js" ><script src="../static.files/storage-1d39b6787ed640ff.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-f070b9041d14864c.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-0111fcff984fae8f.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc fn"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle" title="show sidebar"></button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../mp4duration2/index.html">mp4duration2</a><span class="version">0.1.0</span></h2></div><div class="sidebar-elems"><div id="rustdoc-modnav"></div></div></nav><div class="sidebar-resizer"></div><main><div class="width-limiter"><rustdoc-search></rustdoc-search><section id="main-content" class="content"><div class="main-heading"><span class="rustdoc-breadcrumbs"><a href="index.html">mp4duration2</a></span><h1>Function <span class="fn">main</span><button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../src/mp4duration2/main.rs.html#113-199">source</a> </span></div><pre class="rust item-decl"><code>pub(crate) fn main()</code></pre></section></div></main></body></html>
\ No newline at end of file
diff --git a/doc/mp4duration2/index.html b/doc/mp4duration2/index.html
index 79cef01259c2258740dd1f3955d9149f65eb5ac1..1914e2e463cb2c48ed4692673e957ec630bc14db 100644
--- a/doc/mp4duration2/index.html
+++ b/doc/mp4duration2/index.html
@@ -1 +1 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `mp4duration2` crate."><title>mp4duration2 - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970d388.woff2,SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2,SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-b0742ba02757f159.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="mp4duration2" data-themes="" data-resource-suffix="" data-rustdoc-version="1.83.0 (90b35a623 2024-11-26)" data-channel="1.83.0" data-search-js="search-f0d225181b97f9a4.js" data-settings-js="settings-805db61a62df4bd2.js" ><script src="../static.files/storage-1d39b6787ed640ff.js"></script><script defer src="../crates.js"></script><script defer src="../static.files/main-f070b9041d14864c.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-0111fcff984fae8f.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc mod crate"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle" title="show sidebar"></button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../mp4duration2/index.html">mp4duration2</a><span class="version">0.1.0</span></h2></div><div class="sidebar-elems"><ul class="block"><li><a id="all-types" href="all.html">All Items</a></li></ul><section id="rustdoc-toc"><h3><a href="#enums">Crate Items</a></h3><ul class="block"><li><a href="#enums" title="Enums">Enums</a></li><li><a href="#functions" title="Functions">Functions</a></li></ul></section><div id="rustdoc-modnav"></div></div></nav><div class="sidebar-resizer"></div><main><div class="width-limiter"><rustdoc-search></rustdoc-search><section id="main-content" class="content"><div class="main-heading"><h1>Crate <span>mp4duration2</span><button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../src/mp4duration2/main.rs.html#1-196">source</a> </span></div><h2 id="enums" class="section-header">Enums<a href="#enums" class="anchor">§</a></h2><ul class="item-table"><li><div class="item-name"><a class="enum" href="enum.Mp4Error.html" title="enum mp4duration2::Mp4Error">Mp4Error</a></div></li></ul><h2 id="functions" class="section-header">Functions<a href="#functions" class="anchor">§</a></h2><ul class="item-table"><li><div class="item-name"><a class="fn" href="fn.f_convertsecs.html" title="fn mp4duration2::f_convertsecs">f_<wbr>convertsecs</a><span title="Restricted Visibility">&nbsp;🔒</span> </div></li><li><div class="item-name"><a class="fn" href="fn.get_video_duration.html" title="fn mp4duration2::get_video_duration">get_<wbr>video_<wbr>duration</a></div></li><li><div class="item-name"><a class="fn" href="fn.main.html" title="fn mp4duration2::main">main</a><span title="Restricted Visibility">&nbsp;🔒</span> </div></li></ul></section></div></main></body></html>
\ No newline at end of file
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `mp4duration2` crate."><title>mp4duration2 - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970d388.woff2,SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2,SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-b0742ba02757f159.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="mp4duration2" data-themes="" data-resource-suffix="" data-rustdoc-version="1.83.0 (90b35a623 2024-11-26)" data-channel="1.83.0" data-search-js="search-f0d225181b97f9a4.js" data-settings-js="settings-805db61a62df4bd2.js" ><script src="../static.files/storage-1d39b6787ed640ff.js"></script><script defer src="../crates.js"></script><script defer src="../static.files/main-f070b9041d14864c.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-0111fcff984fae8f.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc mod crate"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle" title="show sidebar"></button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../mp4duration2/index.html">mp4duration2</a><span class="version">0.1.0</span></h2></div><div class="sidebar-elems"><ul class="block"><li><a id="all-types" href="all.html">All Items</a></li></ul><section id="rustdoc-toc"><h3><a href="#enums">Crate Items</a></h3><ul class="block"><li><a href="#enums" title="Enums">Enums</a></li><li><a href="#functions" title="Functions">Functions</a></li></ul></section><div id="rustdoc-modnav"></div></div></nav><div class="sidebar-resizer"></div><main><div class="width-limiter"><rustdoc-search></rustdoc-search><section id="main-content" class="content"><div class="main-heading"><h1>Crate <span>mp4duration2</span><button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../src/mp4duration2/main.rs.html#1-199">source</a> </span></div><h2 id="enums" class="section-header">Enums<a href="#enums" class="anchor">§</a></h2><ul class="item-table"><li><div class="item-name"><a class="enum" href="enum.Mp4Error.html" title="enum mp4duration2::Mp4Error">Mp4Error</a></div></li></ul><h2 id="functions" class="section-header">Functions<a href="#functions" class="anchor">§</a></h2><ul class="item-table"><li><div class="item-name"><a class="fn" href="fn.f_convertsecs.html" title="fn mp4duration2::f_convertsecs">f_<wbr>convertsecs</a><span title="Restricted Visibility">&nbsp;🔒</span> </div></li><li><div class="item-name"><a class="fn" href="fn.get_video_duration.html" title="fn mp4duration2::get_video_duration">get_<wbr>video_<wbr>duration</a></div></li><li><div class="item-name"><a class="fn" href="fn.main.html" title="fn mp4duration2::main">main</a><span title="Restricted Visibility">&nbsp;🔒</span> </div></li></ul></section></div></main></body></html>
\ No newline at end of file
diff --git a/doc/search-index.js b/doc/search-index.js
index aada71a8f57fef5bce5f3c2124b6f9bf716740d6..445711d2b819951784239d07bb3a230f9b99d145 100644
--- a/doc/search-index.js
+++ b/doc/search-index.js
@@ -1,4 +1,4 @@
-var searchIndex = new Map(JSON.parse('[["mp4duration2",{"t":"PPPPPGNNHNNNHNHNNN","n":["InvalidAtom","InvalidAtomSize","InvalidDuration","InvalidMp4Format","IoError","Mp4Error","borrow","borrow_mut","f_convertsecs","fmt","from","","get_video_duration","into","main","try_from","try_into","type_id"],"q":[[0,"mp4duration2"],[18,"core::fmt"],[19,"std::io::error"],[20,"core::result"],[21,"core::any"]],"i":"j0000`00`000`0`000","f":"``````{b{{b{c}}}{}}{{{b{d}}}{{b{dc}}}{}}{fh}{{{b{j}}{b{dl}}}n}{cc{}}{A`j}{{{b{Ab}}}{{Af{Adj}}}}{{}c{}}{{}h}{c{{Af{e}}}{}{}}{{}{{Af{c}}}{}}{bAh}","D":"d","p":[[1,"reference"],[0,"mut"],[1,"u64"],[1,"unit"],[6,"Mp4Error",0],[5,"Formatter",18],[8,"Result",18],[5,"Error",19],[1,"str"],[1,"f64"],[6,"Result",20],[5,"TypeId",21]],"r":[],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAABAAAwAAAAoADAABAA8AAwA="}]]'));
+var searchIndex = new Map(JSON.parse('[["mp4duration2",{"t":"PPPPPGNNHNNNHNHNNN","n":["InvalidAtom","InvalidAtomSize","InvalidDuration","InvalidMp4Format","IoError","Mp4Error","borrow","borrow_mut","f_convertsecs","fmt","from","","get_video_duration","into","main","try_from","try_into","type_id"],"q":[[0,"mp4duration2"],[18,"core::fmt"],[19,"std::io::error"],[20,"core::result"],[21,"core::any"]],"i":"j0000`00`000`0`000","f":"``````{b{{b{c}}}{}}{{{b{d}}}{{b{dc}}}{}}{fh}{{{b{j}}{b{dl}}}n}{cc{}}{A`j}{{{b{Ab}}}{{Af{Adj}}}}{{}c{}}{{}h}{c{{Af{e}}}{}{}}{{}{{Af{c}}}{}}{bAh}","D":"d","p":[[1,"reference"],[0,"mut"],[1,"u64"],[1,"unit"],[6,"Mp4Error",0],[5,"Formatter",18],[8,"Result",18],[5,"Error",19],[1,"str"],[1,"f64"],[6,"Result",20],[5,"TypeId",21]],"r":[],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAABAAAwAAAAoADAABAA8AAwA="}],["mp4duration2",{"t":"PPPPPGPNNHNNNHNHNNN","n":["InvalidAtom","InvalidAtomSize","InvalidDuration","InvalidMp4Format","IoError","Mp4Error","None","borrow","borrow_mut","f_convertsecs","fmt","from","","get_video_duration","into","main","try_from","try_into","type_id"],"q":[[0,"mp4duration2"],[19,"core::fmt"],[20,"std::io::error"],[21,"core::result"],[22,"core::any"]],"i":"j0000`000`000`0`000","f":"```````{b{{b{c}}}{}}{{{b{d}}}{{b{dc}}}{}}{fh}{{{b{j}}{b{dl}}}n}{cc{}}{A`j}{{{b{Ab}}}{{Af{Adj}}}}{{}c{}}{{}h}{c{{Af{e}}}{}{}}{{}{{Af{c}}}{}}{bAh}","D":"d","p":[[1,"reference"],[0,"mut"],[1,"u64"],[1,"unit"],[6,"Mp4Error",0],[5,"Formatter",19],[8,"Result",19],[5,"Error",20],[1,"str"],[1,"f64"],[6,"Result",21],[5,"TypeId",22]],"r":[],"b":[],"c":"OjAAAAAAAAA=","e":"OzAAAAEAABEAAwAAAAsADQABABAAAwA="}]]'));
 if (typeof exports !== 'undefined') exports.searchIndex = searchIndex;
 else if (window.initSearch) window.initSearch(searchIndex);
-//{"start":39,"fragment_lengths":[788]}
\ No newline at end of file
+//{"start":39,"fragment_lengths":[788,799]}
\ No newline at end of file
diff --git a/doc/src/mp4duration2/main.rs.html b/doc/src/mp4duration2/main.rs.html
index b11d891e457a2d51b1143c75940d6e06fced3a67..5a21d5bb355a18d8bf0e379a80e74c458517aad1 100644
--- a/doc/src/mp4duration2/main.rs.html
+++ b/doc/src/mp4duration2/main.rs.html
@@ -194,7 +194,10 @@
 <a href="#193" id="193">193</a>
 <a href="#194" id="194">194</a>
 <a href="#195" id="195">195</a>
-<a href="#196" id="196">196</a></pre></div><pre class="rust"><code><span class="kw">use </span>sprintf::sprintf;
+<a href="#196" id="196">196</a>
+<a href="#197" id="197">197</a>
+<a href="#198" id="198">198</a>
+<a href="#199" id="199">199</a></pre></div><pre class="rust"><code><span class="kw">use </span>sprintf::sprintf;
 <span class="kw">use </span>std::env;
 <span class="kw">use </span>std::fs::File;
 <span class="kw">use </span>std::io::{<span class="self">self</span>, Read};
@@ -273,7 +276,9 @@
                 <span class="kw">let </span>video_duration = duration <span class="kw">as </span>f64 / timescale <span class="kw">as </span>f64;
                 <span class="kw">return </span><span class="prelude-val">Ok</span>(video_duration);
             } <span class="kw">else </span>{
-                <span class="kw">return </span><span class="prelude-val">Err</span>(Mp4Error::InvalidAtom);
+                <span class="comment">// return Err(Mp4Error::InvalidAtom);
+                </span><span class="kw">let </span>video_duration = <span class="number">0.0_f64</span>;
+                <span class="kw">return </span><span class="prelude-val">Ok</span>(video_duration);
             }
         }
 
@@ -377,7 +382,8 @@
                 }
                 f_convertsecs(get_video_duration(arg).unwrap() <span class="kw">as </span>u64);
                 <span class="kw">if </span>show_summary {
-                    wholetime += get_video_duration(arg).unwrap() <span class="kw">as </span>u64;
+                    wholetime +=
+                        get_video_duration(arg).unwrap() <span class="kw">as </span>u64;
                 }
                 <span class="macro">println!</span>(<span class="string">"\t{}"</span>, arg);
             }
diff --git a/mp4duration2.git b/mp4duration2.git
deleted file mode 100644
index 0d366cd69114e09edfc443e22e7413c0d927c7f3..0000000000000000000000000000000000000000
--- a/mp4duration2.git
+++ /dev/null
@@ -1,90 +0,0 @@
-
-
-
-
-<!DOCTYPE html>
-<html lang="en">
-<head>
-    <meta charset="utf-8">
-    <meta http-equiv="X-UA-Compatible" content="IE=edge">
-    <meta name="viewport" content="width=device-width, initial-scale=1">
-    <meta name="description" content="">
-    <meta name="author" content="">
-
-    <title>Login</title>
-
-    <link href="/assets/css/bootstrap.min.css" rel="stylesheet">
-    <link href="/assets/css/font-awesome.min.css" rel="stylesheet">
-    <link href="/assets/css/bootstrap-social.css" rel="stylesheet">
-    <link href="/assets/css/main.css" rel="stylesheet">
-    <link rel="shortcut icon" type="image/png" href="/assets/images/favicon.png">
-
-    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
-    <!--[if lt IE 9]>
-    <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
-    <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
-    <![endif]-->
-
-    <script src='https://www.google.com/recaptcha/api.js'></script>
-</head>
-<body>
-    <header id="page_header" xmlns="http://www.w3.org/1999/html">
-        <div class="container header" style="position: relative;background-image: url('https://www.opendesktop.org/images_sys/store_kde/kde-bg.png');background-color: #aaa;color: #0A0A0A;height: 90px; width: 100%;padding-top: 8px;margin-top: 15px;">
-
-        <section class="container" style="width:100%;">
-            <section class="wrapper" style="padding-left: 40px;">
-
-                <section>
-
-                    <figure class="logo-header">
-                        <a href="https://www.opendesktop.org">
-                            <img width="400px" border="0"
-                            src="https://www.opendesktop.org/images_sys/store_opendesktop/logo.png">
-                        </a>
-                    </figure>
-
-                </section>
-
-            </section>
-        </section>
-
-        </div>
-    </header>
-
-    <div class="container">
-        
-     
-
-<form action="/login?next=%2Foauth%2Fauthorize%3Fclient_id%3DBzeY4MotIOUTXTzPwbhw%26redirect_uri%3Dhttps%253A%252F%252Fwww.opencode.net%252Fusers%252Fauth%252Foauth_opendesktop%252Fcallback%26response_type%3Dcode%26scope%3Dopenid%2520profile%2520email%26state%3Da9145002f9d5aed296a28d93479bd6fe840999115323475a" method="POST" class="form-signin">
-    
-        
-
-
-
-
-
-        <input type="hidden" name="csrfToken" value="08d679c1c7164f37a166f42eb09719f038eee6d5-1735814909141-45067fa00e51fa53dde74324"/>
-        <h2 class="form-heading">Please Log In</h2>
-        <div class="form-group">
-            <input name="email" type="text" class="form-control input-lg" placeholder="Username or Email" autofocus/>
-        </div>
-        <div class="form-group">
-            <input name="password" type="password" class="form-control input-lg" placeholder="Password"/>
-        </div>
-        <button class="btn btn-lg btn-primary btn-block" type="submit">Log In</button>
-        <h4 class="text-center"><a href="https://www.opendesktop.org/register">Register new account</a></h4>
-        <h4 class="text-center"><a href="https://www.opendesktop.org/password/request">Reset password</a></h4>
-        <hr>
-        
-    
-</form>
-
-
-    </div>
-    <script src="/assets/js/jquery.min.js" type="text/javascript"></script>
-    <script src="/assets/js/bootstrap.min.js" type="text/javascript"></script>
-    <script src="/assets/js/bootstrap-show-password.min.js" type="text/javascript"></script>
-    <script src="/assets/js/main.js" type="text/javascript"></script>
-</body>
-</html>
-
diff --git a/mp4duration2_git_wget.txt b/mp4duration2_git_wget.txt
deleted file mode 100644
index 12774b7fe6875ed75627889b90ade6bb8292c774..0000000000000000000000000000000000000000
--- a/mp4duration2_git_wget.txt
+++ /dev/null
@@ -1,20 +0,0 @@
-HSTS in effect for www.opencode.net:80
-[0] Downloading 'https://git@www.opencode.net:abigoven/mp4duration2.git' ...
-HTTP response 302  [https://git@www.opencode.net:abigoven/mp4duration2.git]
-Adding URL: https://www.opencode.net/users/sign_in
-[0] Downloading 'https://www.opencode.net/users/sign_in' ...
-HTTP response 302  [https://www.opencode.net/users/sign_in]
-Adding URL: https://www.opencode.net/users/auth/oauth_opendesktop
-[0] Downloading 'https://www.opencode.net/users/auth/oauth_opendesktop' ...
-HTTP response 302  [https://www.opencode.net/users/auth/oauth_opendesktop]
-Adding URL: https://id.opendesktop.org/oauth/authorize?client_id=BzeY4MotIOUTXTzPwbhw&redirect_uri=https%3A%2F%2Fwww.opencode.net%2Fusers%2Fauth%2Foauth_opendesktop%2Fcallback&response_type=code&scope=openid+profile+email&state=a9145002f9d5aed296a28d93479bd6fe840999115323475a
-[0] Downloading 'https://id.opendesktop.org/oauth/authorize?client_id=BzeY4MotIOUTXTzPwbhw&redirect_uri=https%3A%2F%2Fwww.opencode.net%2Fusers%2Fauth%2Foauth_opendesktop%2Fcallback&response_type=code&scope=openid+profile+email&state=a9145002f9d5aed296a28d93479bd6fe840999115323475a' ...
-HTTP response 303 See Other [https://id.opendesktop.org/oauth/authorize?client_id=BzeY4MotIOUTXTzPwbhw&redirect_uri=https%3A%2F%2Fwww.opencode.net%2Fusers%2Fauth%2Foauth_opendesktop%2Fcallback&response_type=code&scope=openid+profile+email&state=a9145002f9d5aed296a28d93479bd6fe840999115323475a]
-Adding URL: https://id.opendesktop.org/login?next=%2Foauth%2Fauthorize%3Fclient_id%3DBzeY4MotIOUTXTzPwbhw%26redirect_uri%3Dhttps%253A%252F%252Fwww.opencode.net%252Fusers%252Fauth%252Foauth_opendesktop%252Fcallback%26response_type%3Dcode%26scope%3Dopenid%2520profile%2520email%26state%3Da9145002f9d5aed296a28d93479bd6fe840999115323475a
-[0] Downloading 'https://id.opendesktop.org/login?next=%2Foauth%2Fauthorize%3Fclient_id%3DBzeY4MotIOUTXTzPwbhw%26redirect_uri%3Dhttps%253A%252F%252Fwww.opencode.net%252Fusers%252Fauth%252Foauth_opendesktop%252Fcallback%26response_type%3Dcode%26scope%3Dopenid%2520profile%2520email%26state%3Da9145002f9d5aed296a28d93479bd6fe840999115323475a' ...
-Saving 'mp4duration2.git'
-HTTP response 200 OK [https://id.opendesktop.org/login?next=%2Foauth%2Fauthorize%3Fclient_id%3DBzeY4MotIOUTXTzPwbhw%26redirect_uri%3Dhttps%253A%252F%252Fwww.opencode.net%252Fusers%252Fauth%252Foauth_opendesktop%252Fcallback%26response_type%3Dcode%26scope%3Dopenid%2520profile%2520email%26state%3Da9145002f9d5aed296a28d93479bd6fe840999115323475a]
-HSTS in effect for www.opencode.net:80
-Nothing to do - goodbye
-HSTS in effect for www.opencode.net:80
-Nothing to do - goodbye
diff --git a/src/main.rs b/src/main.rs
index b055a1c1b22b48b109c3ecd26b001d3cc658a6cd..ad1a2e140647b6ca453389cf6dcb75056b89e240 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -77,7 +77,9 @@ pub fn get_video_duration(path: &str) -> Result<f64, Mp4Error> {
                 let video_duration = duration as f64 / timescale as f64;
                 return Ok(video_duration);
             } else {
-                return Err(Mp4Error::InvalidAtom);
+                // return Err(Mp4Error::InvalidAtom);
+                let video_duration = 0.0_f64;
+                return Ok(video_duration);
             }
         }
 
diff --git a/x86_64-pc-windows-gnu/mp4duration2.exe b/x86_64-pc-windows-gnu/mp4duration2.exe
index 536004e40d74cda68642196b7a4b00a9aa498841..f500e1ff7a9c5db2119dedf9bea59f2f870366c4 100755
Binary files a/x86_64-pc-windows-gnu/mp4duration2.exe and b/x86_64-pc-windows-gnu/mp4duration2.exe differ
diff --git a/x86_64-unknown-linux-gnu/mp4duration2 b/x86_64-unknown-linux-gnu/mp4duration2
index b8f6dfa12840bb5fdbcaf57d7d20d86b6083c1f4..c038959eb5ab1f86c181e18fefe503e0f197168f 100755
Binary files a/x86_64-unknown-linux-gnu/mp4duration2 and b/x86_64-unknown-linux-gnu/mp4duration2 differ