[INFO] cloning repository https://github.com/konakona418/flv-rs [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/konakona418/flv-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkonakona418%2Fflv-rs", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkonakona418%2Fflv-rs'... [INFO] [stderr] /workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkonakona418%2Fflv-rs/refs: No space left on device [WARN] Retrying crate fetch in 3 seconds (attempt 1) [INFO] cloning repository https://github.com/konakona418/flv-rs [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/konakona418/flv-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkonakona418%2Fflv-rs", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkonakona418%2Fflv-rs'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] ee770c610c6b335f5a2e88c99a3be7d774c50005 [INFO] checking konakona418/flv-rs against master#f2d69d5a7c04617d122facd0a7a5bdde0af928ae for pr-138363 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkonakona418%2Fflv-rs" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/konakona418/flv-rs on toolchain f2d69d5a7c04617d122facd0a7a5bdde0af928ae [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f2d69d5a7c04617d122facd0a7a5bdde0af928ae" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/konakona418/flv-rs [INFO] finished tweaking git repo https://github.com/konakona418/flv-rs [INFO] tweaked toml for git repo https://github.com/konakona418/flv-rs written to /workspace/builds/worker-0-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/konakona418/flv-rs already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f2d69d5a7c04617d122facd0a7a5bdde0af928ae" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:1680c8fbd8dfb46fcd6d22e546df16ab0e007457dc29fcd9e987cdd5077fd1af" "/opt/rustwide/cargo-home/bin/cargo" "+f2d69d5a7c04617d122facd0a7a5bdde0af928ae" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] dd54abaa237e8c8fa84be4a3b81c885cc198e9a1eb9476e06917e9e4b89d6da6 [INFO] running `Command { std: "docker" "start" "-a" "dd54abaa237e8c8fa84be4a3b81c885cc198e9a1eb9476e06917e9e4b89d6da6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "dd54abaa237e8c8fa84be4a3b81c885cc198e9a1eb9476e06917e9e4b89d6da6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "dd54abaa237e8c8fa84be4a3b81c885cc198e9a1eb9476e06917e9e4b89d6da6", kill_on_drop: false }` [INFO] [stdout] dd54abaa237e8c8fa84be4a3b81c885cc198e9a1eb9476e06917e9e4b89d6da6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:1680c8fbd8dfb46fcd6d22e546df16ab0e007457dc29fcd9e987cdd5077fd1af" "/opt/rustwide/cargo-home/bin/cargo" "+f2d69d5a7c04617d122facd0a7a5bdde0af928ae" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] a74c40342245da2504b61677bb0b6392bb7cdd6eb3fc5e783b41396f48c4b7f0 [INFO] running `Command { std: "docker" "start" "-a" "a74c40342245da2504b61677bb0b6392bb7cdd6eb3fc5e783b41396f48c4b7f0", kill_on_drop: false }` [INFO] [stderr] Checking flv-rs v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::fmt::Debug` [INFO] [stdout] --> src/exchange.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::fmt::Debug; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt::Debug` [INFO] [stdout] --> src/exchange.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::fmt::Debug; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `decoder` [INFO] [stdout] --> src/flv/header.rs:109:18 [INFO] [stdout] | [INFO] [stdout] 109 | pub fn parse(decoder: &mut Decoder, header_size: &mut usize) -> Result> { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_decoder` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `header_size` [INFO] [stdout] --> src/flv/header.rs:109:41 [INFO] [stdout] | [INFO] [stdout] 109 | pub fn parse(decoder: &mut Decoder, header_size: &mut usize) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_header_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `decoder` [INFO] [stdout] --> src/flv/header.rs:131:18 [INFO] [stdout] | [INFO] [stdout] 131 | pub fn parse(decoder: &mut Decoder) -> Self { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_decoder` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `decoder` [INFO] [stdout] --> src/flv/header.rs:137:18 [INFO] [stdout] | [INFO] [stdout] 137 | pub fn parse(decoder: &mut Decoder, param_size: &mut usize) -> Result> { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_decoder` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `param_size` [INFO] [stdout] --> src/flv/header.rs:137:41 [INFO] [stdout] | [INFO] [stdout] 137 | pub fn parse(decoder: &mut Decoder, param_size: &mut usize) -> Result> { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_param_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `decoder` [INFO] [stdout] --> src/flv/header.rs:109:18 [INFO] [stdout] | [INFO] [stdout] 109 | pub fn parse(decoder: &mut Decoder, header_size: &mut usize) -> Result> { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_decoder` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `header_size` [INFO] [stdout] --> src/flv/header.rs:109:41 [INFO] [stdout] | [INFO] [stdout] 109 | pub fn parse(decoder: &mut Decoder, header_size: &mut usize) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_header_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `decoder` [INFO] [stdout] --> src/flv/header.rs:131:18 [INFO] [stdout] | [INFO] [stdout] 131 | pub fn parse(decoder: &mut Decoder) -> Self { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_decoder` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `decoder` [INFO] [stdout] --> src/flv/header.rs:137:18 [INFO] [stdout] | [INFO] [stdout] 137 | pub fn parse(decoder: &mut Decoder, param_size: &mut usize) -> Result> { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_decoder` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `param_size` [INFO] [stdout] --> src/flv/header.rs:137:41 [INFO] [stdout] | [INFO] [stdout] 137 | pub fn parse(decoder: &mut Decoder, param_size: &mut usize) -> Result> { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_param_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/fmpeg/remuxer.rs:86:17 [INFO] [stdout] | [INFO] [stdout] 86 | Err(e) => Err("[Remuxer] Channel closed.".into()) [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/fmpeg/remuxer.rs:197:28 [INFO] [stdout] | [INFO] [stdout] 197 | if let VideoParseResult::Avc1(parsed) = parsed { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this pattern will always match, so the `if let` is useless [INFO] [stdout] = help: consider replacing the `if let` with a `let` [INFO] [stdout] = note: `#[warn(irrefutable_let_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/fmpeg/remuxer.rs:86:17 [INFO] [stdout] | [INFO] [stdout] 86 | Err(e) => Err("[Remuxer] Channel closed.".into()) [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/fmpeg/remuxer.rs:197:28 [INFO] [stdout] | [INFO] [stdout] 197 | if let VideoParseResult::Avc1(parsed) = parsed { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this pattern will always match, so the `if let` is useless [INFO] [stdout] = help: consider replacing the `if let` with a `let` [INFO] [stdout] = note: `#[warn(irrefutable_let_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/fmpeg/mp4head.rs:2014:22 [INFO] [stdout] | [INFO] [stdout] 2014 | pub fn build(mut self) -> AacAudioSpecificConfigBox { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/fmpeg/mp4head.rs:2339:17 [INFO] [stdout] | [INFO] [stdout] 2339 | let mut size = self.size(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/fmpeg/mp4head.rs:2014:22 [INFO] [stdout] | [INFO] [stdout] 2014 | pub fn build(mut self) -> AacAudioSpecificConfigBox { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/fmpeg/mp4head.rs:2339:17 [INFO] [stdout] | [INFO] [stdout] 2339 | let mut size = self.size(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/fmpeg/remux_context.rs:411:13 [INFO] [stdout] | [INFO] [stdout] 385 | VideoParseResult::Avc1(h264_info) => { [INFO] [stdout] | --------------------------------- matches all the relevant values [INFO] [stdout] ... [INFO] [stdout] 411 | _ => { [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `protection_bit` [INFO] [stdout] --> src/fmpeg/parser.rs:241:13 [INFO] [stdout] | [INFO] [stdout] 241 | let protection_bit = u16io.read_at(15); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_protection_bit` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `header` [INFO] [stdout] --> src/fmpeg/parser.rs:221:18 [INFO] [stdout] | [INFO] [stdout] 221 | fn parse_mp3(header: &AudioTagHeader, body: &VecDeque) -> Result> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_header` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/fmpeg/remux_context.rs:411:13 [INFO] [stdout] | [INFO] [stdout] 385 | VideoParseResult::Avc1(h264_info) => { [INFO] [stdout] | --------------------------------- matches all the relevant values [INFO] [stdout] ... [INFO] [stdout] 411 | _ => { [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ctx` [INFO] [stdout] --> src/fmpeg/encoder.rs:85:24 [INFO] [stdout] | [INFO] [stdout] 85 | pub fn encode_hdlr(ctx: &RemuxContext, handler_type: HandlerType) -> mp4head::HandlerBox { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ctx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `protection_bit` [INFO] [stdout] --> src/fmpeg/parser.rs:241:13 [INFO] [stdout] | [INFO] [stdout] 241 | let protection_bit = u16io.read_at(15); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_protection_bit` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `header` [INFO] [stdout] --> src/fmpeg/parser.rs:221:18 [INFO] [stdout] | [INFO] [stdout] 221 | fn parse_mp3(header: &AudioTagHeader, body: &VecDeque) -> Result> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_header` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ctx` [INFO] [stdout] --> src/fmpeg/encoder.rs:85:24 [INFO] [stdout] | [INFO] [stdout] 85 | pub fn encode_hdlr(ctx: &RemuxContext, handler_type: HandlerType) -> mp4head::HandlerBox { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ctx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/flv/demuxer.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Demuxer { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 10 | channel_exchange: Option>, [INFO] [stdout] 11 | channel_receiver: mpsc::Receiver, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 12 | channel_sender: mpsc::Sender, [INFO] [stdout] 13 | demuxing: bool, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 14 | [INFO] [stdout] 15 | cache_video_tags: VecDeque, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 16 | cache_audio_tags: VecDeque, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 17 | cache_script_tags: VecDeque, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 18 | cache_metadata: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 19 | cache_flv_header: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/flv/demuxer.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl Demuxer { [INFO] [stdout] | ------------ associated items in this implementation [INFO] [stdout] 23 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | fn set_demuxing(&mut self, flag: bool) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | fn process_incoming_tag(&mut self, tag: Tag) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 66 | fn send_to_remuxer(&mut self, pack: Packed) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 76 | fn send_from_cache(&mut self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 120 | pub fn run(&mut self) -> Result<(), Box> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 169 | pub fn launch_worker_thread(mut self) -> JoinHandle<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `data`, `previous_tag_size`, `channel_receiver`, and `decoding` are never read [INFO] [stdout] --> src/flv/decoder.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct Decoder { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 12 | data: VecDeque, [INFO] [stdout] | ^^^^ [INFO] [stdout] 13 | previous_tag_size: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 14 | channel_exchange: Option>, [INFO] [stdout] 15 | channel_receiver: mpsc::Receiver, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 16 | channel_sender: mpsc::Sender, [INFO] [stdout] 17 | decoding: bool, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/flv/decoder.rs:35:12 [INFO] [stdout] | [INFO] [stdout] 34 | impl Decoder { [INFO] [stdout] | ------------ associated items in this implementation [INFO] [stdout] 35 | pub fn new(data: VecDeque) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn push_data(&mut self, data: &mut VecDeque) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn push_bytes(&mut self, bytes: &[u8]) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn drain_u8(&mut self) -> u8 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | pub fn drain_bytes(&mut self) -> [u8; SIZE] { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 70 | pub fn drain_bytes_vec(&mut self, size: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 76 | pub fn drain_bytes_deque(&mut self, size: usize) -> VecDeque { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 82 | pub fn drain_u16_le(&mut self) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | pub fn drain_u16(&mut self) -> u16 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 98 | pub fn drain_u24_le(&mut self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | pub fn drain_u24(&mut self) -> u32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 116 | pub fn drain_u32_le(&mut self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 126 | pub fn drain_u32(&mut self) -> u32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 136 | pub fn drain_u64(&mut self) -> u64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn drain_i8(&mut self) -> i8 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | pub fn drain_i16(&mut self) -> i16 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 163 | pub fn drain_i24(&mut self) -> i32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 172 | pub fn drain_i32(&mut self) -> i32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 182 | pub fn drain_i64(&mut self) -> i64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 196 | pub fn drain_f64(&mut self) -> f64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 210 | pub fn drain_f64_le(&mut self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 224 | pub fn drain_f32_le(&mut self) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 234 | pub fn drain_f32(&mut self) -> f32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 243 | pub fn decode_header(&mut self) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 262 | pub fn concat_ts(ts: u32, ts_ext: u8) -> u32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 266 | pub fn decode_tag(&mut self) -> Result> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 330 | fn set_decoding(&mut self, flag: bool) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 334 | pub fn decode_body(&mut self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 377 | pub fn decode_body_once(&mut self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 407 | fn send_to_demuxer(&mut self, pack: Packed) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 418 | fn send_tag_to_demuxer(&mut self, tag: Tag) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 426 | fn send_header_to_demuxer(&mut self, flv_header: FlvHeader) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 434 | fn run(&mut self) -> Result<(), Box> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 450 | pub fn launch_worker_thread(mut self) -> JoinHandle<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `signature`, `version`, `type_flags_audio`, `type_flags_video`, and `data_offset` are never read [INFO] [stdout] --> src/flv/header.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct FlvHeader { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 6 | pub signature: [u8; 3], [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 7 | pub version: u8, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 8 | pub type_flags_audio: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 9 | pub type_flags_video: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 10 | pub data_offset: u32, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FlvHeader` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/flv/header.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl FlvHeader { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 14 | pub fn new(signature: [u8; 3], version: u8, type_flags_audio: bool, type_flags_video: bool, data_offset: u32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Audio`, `Video`, `Script`, and `Placeholder` are never constructed [INFO] [stdout] --> src/flv/header.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 20 | pub enum TagHeader { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] 21 | Audio(AudioTagHeader), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 22 | Video(VideoTagHeader), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 23 | Script, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 24 | Placeholder, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TagHeader` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `sound_format`, `sound_rate`, `sound_size`, `sound_type`, and `aac_packet_type` are never read [INFO] [stdout] --> src/flv/header.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct AudioTagHeader { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 29 | // UB4 [INFO] [stdout] 30 | pub sound_format: u8, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 31 | // UB2 [INFO] [stdout] 32 | pub sound_rate: u8, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 33 | // UB1 [INFO] [stdout] 34 | pub sound_size: bool, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 35 | // UB1 [INFO] [stdout] 36 | pub sound_type: bool, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 39 | pub aac_packet_type: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AudioTagHeader` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `parse` are never used [INFO] [stdout] --> src/flv/header.rs:43:12 [INFO] [stdout] | [INFO] [stdout] 42 | impl AudioTagHeader { [INFO] [stdout] | ------------------- associated functions in this implementation [INFO] [stdout] 43 | pub fn new(sound_format: u8, sound_rate: u8, sound_size: bool, sound_type: bool, aac_packet_type: Option) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn parse(decoder: &mut Decoder, header_size: &mut usize) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `frame_type`, `codec_id`, `avc_packet_type`, and `composition_time` are never read [INFO] [stdout] --> src/flv/header.rs:68:9 [INFO] [stdout] | [INFO] [stdout] 66 | pub struct VideoTagHeader { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 67 | // UB4 [INFO] [stdout] 68 | pub frame_type: u8, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 69 | // UB4 [INFO] [stdout] 70 | pub codec_id: u8, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | pub avc_packet_type: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 76 | pub composition_time: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `VideoTagHeader` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `parse` are never used [INFO] [stdout] --> src/flv/header.rs:80:12 [INFO] [stdout] | [INFO] [stdout] 79 | impl VideoTagHeader { [INFO] [stdout] | ------------------- associated functions in this implementation [INFO] [stdout] 80 | pub fn new(frame_type: u8, codec_id: u8, avc_packet_type: Option, composition_time: Option) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | pub fn parse(decoder: &mut Decoder, header_size: &mut usize) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `parse` is never used [INFO] [stdout] --> src/flv/header.rs:109:12 [INFO] [stdout] | [INFO] [stdout] 108 | impl EncryptionTagHeader { [INFO] [stdout] | ------------------------ associated function in this implementation [INFO] [stdout] 109 | pub fn parse(decoder: &mut Decoder, header_size: &mut usize) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `core` [INFO] [stdout] --> src/lib.rs:94:13 [INFO] [stdout] | [INFO] [stdout] 94 | let core = core::Core::new(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_core` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `EncryptionFilter` and `SelectiveEncryptionFilter` are never constructed [INFO] [stdout] --> src/flv/header.rs:116:5 [INFO] [stdout] | [INFO] [stdout] 115 | pub enum FilterParameters { [INFO] [stdout] | ---------------- variants in this enum [INFO] [stdout] 116 | EncryptionFilter(EncryptionFilterParameters), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 117 | SelectiveEncryptionFilter(SelectiveEncryptionFilterParameters), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FilterParameters` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `parse` is never used [INFO] [stdout] --> src/flv/header.rs:131:12 [INFO] [stdout] | [INFO] [stdout] 130 | impl SelectiveEncryptionFilterParameters { [INFO] [stdout] | ---------------------------------------- associated function in this implementation [INFO] [stdout] 131 | pub fn parse(decoder: &mut Decoder) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `parse` is never used [INFO] [stdout] --> src/flv/header.rs:137:12 [INFO] [stdout] | [INFO] [stdout] 136 | impl FilterParameters { [INFO] [stdout] | --------------------- associated function in this implementation [INFO] [stdout] 137 | pub fn parse(decoder: &mut Decoder, param_size: &mut usize) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/flv/tag.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Tag { [INFO] [stdout] | --- fields in this struct [INFO] [stdout] 8 | pub filter: bool, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 9 | pub tag_type: TagType, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 10 | pub data_size: u32, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 11 | pub timestamp_short: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 12 | pub timestamp_extended: u8, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 13 | pub timestamp: u32, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 14 | pub stream_id: u32, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 15 | pub tag_header: TagHeader, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 16 | pub encryption_tag_header: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 17 | pub filter_parameters: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 18 | pub tag_body: TagBody, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Tag` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Audio`, `Video`, `Script`, and `Encryption` are never constructed [INFO] [stdout] --> src/flv/tag.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 22 | pub enum TagType { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] 23 | Audio, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 24 | Video, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 25 | Script, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 26 | Encryption, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TagType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Normal` and `Encrypted` are never constructed [INFO] [stdout] --> src/flv/tag.rs:54:5 [INFO] [stdout] | [INFO] [stdout] 53 | pub enum TagBody { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] 54 | Normal(NormalTagBody), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 55 | Encrypted(EncryptedTagBody), [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TagBody` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Audio`, `Video`, `Script`, and `Placeholder` are never constructed [INFO] [stdout] --> src/flv/tag.rs:60:5 [INFO] [stdout] | [INFO] [stdout] 59 | pub enum NormalTagBody { [INFO] [stdout] | ------------- variants in this enum [INFO] [stdout] 60 | Audio(VecDeque), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 61 | Video(VecDeque), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 62 | Script(ScriptTagBody), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 63 | Placeholder, // todo: temporary [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NormalTagBody` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Audio`, `Video`, `Script`, and `Placeholder` are never constructed [INFO] [stdout] --> src/flv/tag.rs:97:5 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum EncryptedTagBody { [INFO] [stdout] | ---------------- variants in this enum [INFO] [stdout] 97 | Audio(Vec), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 98 | Video(Vec), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 99 | Script(ScriptTagBody), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 100 | Placeholder, // todo: temporary [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EncryptedTagBody` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from` is never used [INFO] [stdout] --> src/flv/tag.rs:104:12 [INFO] [stdout] | [INFO] [stdout] 103 | impl TagType { [INFO] [stdout] | ------------ associated function in this implementation [INFO] [stdout] 104 | pub fn from(tag_type: u8) -> Result> { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/flv/tag.rs:123:12 [INFO] [stdout] | [INFO] [stdout] 122 | impl Tag { [INFO] [stdout] | -------- associated function in this implementation [INFO] [stdout] 123 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_object` is never used [INFO] [stdout] --> src/flv/script.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn parse_object(data: &mut Decoder) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `parse` is never used [INFO] [stdout] --> src/flv/script.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 32 | impl ScriptTagBody { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 33 | pub fn parse(data: &mut Decoder) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/flv/script.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 41 | pub enum ScriptData { [INFO] [stdout] | ---------- variants in this enum [INFO] [stdout] 42 | Number(f64), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 43 | Boolean(u8), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 44 | String(ScriptDataString), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 45 | Object(ScriptDataObject), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 46 | MovieClip, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 47 | Null, [INFO] [stdout] | ^^^^ [INFO] [stdout] 48 | Undefined, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 49 | Reference(u16), [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 50 | EcmaArray(ScriptDataEcmaArray), [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 51 | ObjectEndMarker, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 52 | StrictArray(ScriptStrictArray), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 53 | Date(ScriptDataDate), [INFO] [stdout] | ^^^^ [INFO] [stdout] 54 | LongString(ScriptDataLongString), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 55 | NotImplemented, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ScriptData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `properties` is never read [INFO] [stdout] --> src/flv/script.rs:60:9 [INFO] [stdout] | [INFO] [stdout] 59 | pub struct ScriptDataObject { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] 60 | pub properties: Vec, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ScriptDataObject` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `parse` and `parse_no_marker` are never used [INFO] [stdout] --> src/flv/script.rs:65:12 [INFO] [stdout] | [INFO] [stdout] 63 | impl ScriptDataObject { [INFO] [stdout] | --------------------- associated functions in this implementation [INFO] [stdout] 64 | [INFO] [stdout] 65 | pub fn parse(data: &mut Decoder) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 79 | pub fn parse_no_marker(data: &mut Decoder) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `value` are never read [INFO] [stdout] --> src/flv/script.rs:97:9 [INFO] [stdout] | [INFO] [stdout] 96 | pub struct ScriptDataObjectProp { [INFO] [stdout] | -------------------- fields in this struct [INFO] [stdout] 97 | pub name: ScriptDataString, [INFO] [stdout] | ^^^^ [INFO] [stdout] 98 | pub value: ScriptData, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ScriptDataObjectProp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `length` and `data` are never read [INFO] [stdout] --> src/flv/script.rs:103:9 [INFO] [stdout] | [INFO] [stdout] 102 | pub struct ScriptDataString { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] 103 | pub length: u16, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 104 | pub data: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ScriptDataString` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `parse` and `parse_no_marker` are never used [INFO] [stdout] --> src/flv/script.rs:108:12 [INFO] [stdout] | [INFO] [stdout] 107 | impl ScriptDataString { [INFO] [stdout] | --------------------- associated functions in this implementation [INFO] [stdout] 108 | pub fn parse(data: &mut Decoder) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 124 | pub fn parse_no_marker(data: &mut Decoder) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `length` and `data` are never read [INFO] [stdout] --> src/flv/script.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 133 | pub struct ScriptDataLongString { [INFO] [stdout] | -------------------- fields in this struct [INFO] [stdout] 134 | pub length: u32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 135 | pub data: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ScriptDataLongString` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `parse` and `parse_no_marker` are never used [INFO] [stdout] --> src/flv/script.rs:139:12 [INFO] [stdout] | [INFO] [stdout] 138 | impl ScriptDataLongString { [INFO] [stdout] | ------------------------- associated functions in this implementation [INFO] [stdout] 139 | pub fn parse(data: &mut Decoder) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 152 | pub fn parse_no_marker(data: &mut Decoder) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `parse` and `parse_no_marker` are never used [INFO] [stdout] --> src/flv/script.rs:167:12 [INFO] [stdout] | [INFO] [stdout] 166 | impl ScriptDataEcmaArray { [INFO] [stdout] | ------------------------ associated functions in this implementation [INFO] [stdout] 167 | pub fn parse(data: &mut Decoder) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 183 | pub fn parse_no_marker(data: &mut Decoder) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `length` and `values` are never read [INFO] [stdout] --> src/flv/script.rs:197:9 [INFO] [stdout] | [INFO] [stdout] 196 | pub struct ScriptStrictArray { [INFO] [stdout] | ----------------- fields in this struct [INFO] [stdout] 197 | pub length: u32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 198 | pub values: Vec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ScriptStrictArray` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `parse` and `parse_no_marker` are never used [INFO] [stdout] --> src/flv/script.rs:202:12 [INFO] [stdout] | [INFO] [stdout] 201 | impl ScriptStrictArray { [INFO] [stdout] | ---------------------- associated functions in this implementation [INFO] [stdout] 202 | pub fn parse(data: &mut Decoder) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | pub fn parse_no_marker(data: &mut Decoder) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `date` and `local_time_offset` are never read [INFO] [stdout] --> src/flv/script.rs:229:9 [INFO] [stdout] | [INFO] [stdout] 228 | pub struct ScriptDataDate { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 229 | pub date: f64, [INFO] [stdout] | ^^^^ [INFO] [stdout] 230 | pub local_time_offset: i16, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ScriptDataDate` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `parse` and `parse_no_marker` are never used [INFO] [stdout] --> src/flv/script.rs:234:12 [INFO] [stdout] | [INFO] [stdout] 233 | impl ScriptDataDate { [INFO] [stdout] | ------------------- associated functions in this implementation [INFO] [stdout] 234 | pub fn parse(data: &mut Decoder) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 248 | pub fn parse_no_marker(data: &mut Decoder) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MetaData` is never constructed [INFO] [stdout] --> src/flv/meta.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct MetaData { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/flv/meta.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl MetaData { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 23 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `data` is never read [INFO] [stdout] --> src/flv/meta.rs:61:5 [INFO] [stdout] | [INFO] [stdout] 60 | pub struct RawMetaData { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 61 | data: HashMap [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `try_get`, `try_get_string`, `try_get_number`, and `try_get_boolean` are never used [INFO] [stdout] --> src/flv/meta.rs:65:12 [INFO] [stdout] | [INFO] [stdout] 64 | impl RawMetaData { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 65 | pub fn new(data: ScriptTagBody) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | pub fn try_get(&self, key: &str) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | pub fn try_get_string(&self, key: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 83 | pub fn try_get_number(&self, key: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | pub fn try_get_boolean(&self, key: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `XMPData` is never constructed [INFO] [stdout] --> src/flv/meta.rs:98:12 [INFO] [stdout] | [INFO] [stdout] 98 | pub struct XMPData { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/flv/meta.rs:103:12 [INFO] [stdout] | [INFO] [stdout] 102 | impl XMPData { [INFO] [stdout] | ------------ associated function in this implementation [INFO] [stdout] 103 | pub fn new(xmp: String) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `IReader` is never used [INFO] [stdout] --> src/io/reader.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | pub trait IReader { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LocalReader` is never constructed [INFO] [stdout] --> src/io/reader.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct LocalReader { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `read_file`, and `read_bytes` are never used [INFO] [stdout] --> src/io/reader.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 21 | impl LocalReader { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 22 | pub fn new(filename: &str) -> LocalReader { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | pub fn read_file(&mut self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn read_bytes(&mut self, buffer: &mut [u8]) -> Result<(), std::io::Error> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BitIO` is never constructed [INFO] [stdout] --> src/io/bit.rs:1:12 [INFO] [stdout] | [INFO] [stdout] 1 | pub struct BitIO { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `read`, `read_bit`, `read_bit_safe`, and `read_range` are never used [INFO] [stdout] --> src/io/bit.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 5 | impl BitIO { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 6 | pub fn new(byte: u8) -> BitIO { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 13 | pub fn read(&self) -> bool { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 20 | pub fn read_bit(&self, index: usize) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 25 | pub fn read_bit_safe(&self, index: usize) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn read_range(&self, start: usize, end: usize) -> u8 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LittleEndian` is never constructed [INFO] [stdout] --> src/io/bit.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 45 | pub enum UIntParserEndian { [INFO] [stdout] | ---------------- variant in this enum [INFO] [stdout] 46 | LittleEndian, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `endian` is never read [INFO] [stdout] --> src/io/bit.rs:51:5 [INFO] [stdout] | [INFO] [stdout] 49 | pub struct U16BitIO { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 50 | pub(crate) data: [u8; 2], [INFO] [stdout] 51 | endian: UIntParserEndian [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_data`, `read_at`, and `read_range` are never used [INFO] [stdout] --> src/io/bit.rs:56:12 [INFO] [stdout] | [INFO] [stdout] 54 | impl U16BitIO { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] 55 | #[inline] [INFO] [stdout] 56 | pub fn get_data(&self) -> [u8; 2] { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 78 | pub fn read_at(&mut self, bit_offset: usize) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | pub fn read_range(&mut self, start: usize, end: usize) -> u16 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `U32BitIO` is never constructed [INFO] [stdout] --> src/io/bit.rs:118:12 [INFO] [stdout] | [INFO] [stdout] 118 | pub struct U32BitIO { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `get_data`, `new`, `read_at`, `read_range`, `write_at`, and `write_range` are never used [INFO] [stdout] --> src/io/bit.rs:125:12 [INFO] [stdout] | [INFO] [stdout] 123 | impl U32BitIO { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 124 | #[inline] [INFO] [stdout] 125 | pub fn get_data(&self) -> [u8; 4] { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 130 | pub fn new(data: u32, endian: UIntParserEndian) -> U32BitIO { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 146 | pub fn read_at(&mut self, bit_offset: usize) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 156 | pub fn read_range(&mut self, start: usize, end: usize) -> u32 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 165 | pub fn write_at(&mut self, bit_offset: usize, value: bool) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 177 | pub fn write_range(&mut self, start: usize, end: usize, value: u32) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/core.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl Core { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 17 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn send(&self, packed: Packed) -> Result<(), Box> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 62 | pub fn push_data_to_decoder(&self, data: &mut VecDeque) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | pub fn start(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | fn start_decoding(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 92 | fn start_demuxing(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | fn start_remuxing(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | pub fn stop(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 121 | fn stop_decoding(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 132 | fn stop_demuxing(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 143 | fn stop_remuxing(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 154 | pub fn now(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 161 | fn decode_now(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 172 | fn demux_now(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 183 | fn remux_now(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 194 | pub fn drop_all_workers(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 201 | fn drop_decoding_worker(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 212 | fn drop_demuxing_worker(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 223 | fn drop_remuxing_worker(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_audio_codec_conf`, `get_video_codec_conf`, `is_codec_configured`, `try_get_codec_conf`, and `get_codec_conf` are never used [INFO] [stdout] --> src/core.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 263 | impl Core { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] 264 | pub fn get_audio_codec_conf(&mut self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 271 | pub fn get_video_codec_conf(&mut self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 278 | pub fn is_codec_configured(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 286 | pub fn try_get_codec_conf(&mut self) -> Option<(String, String)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 294 | pub fn get_codec_conf(&mut self) -> Result<(String, String), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `consume` is never used [INFO] [stdout] --> src/core.rs:308:8 [INFO] [stdout] | [INFO] [stdout] 306 | pub trait IConsumable { [INFO] [stdout] | ----------- method in this trait [INFO] [stdout] 307 | type ConsumerData; [INFO] [stdout] 308 | fn consume(&mut self) -> Result>; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Exchange` is never constructed [INFO] [stdout] --> src/exchange.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct Exchange { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `set_exchange`, `get_sender`, and `get_self_as_destination` are never used [INFO] [stdout] --> src/exchange.rs:62:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub trait ExchangeRegistrable { [INFO] [stdout] | ------------------- methods in this trait [INFO] [stdout] 62 | fn set_exchange(&mut self, sender: mpsc::Sender); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 63 | [INFO] [stdout] 64 | fn get_sender(&self) -> mpsc::Sender; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 65 | fn get_self_as_destination(&self) -> Destination; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `get_exchange_sender`, `get_sender`, `register`, `process_incoming`, and `launch_worker_thread` are never used [INFO] [stdout] --> src/exchange.rs:69:12 [INFO] [stdout] | [INFO] [stdout] 68 | impl Exchange { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 69 | pub fn new() -> Exchange { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 78 | pub fn get_exchange_sender(&self) -> mpsc::Sender { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 82 | pub fn get_sender(&self, channel_dest: Destination) -> Option> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 86 | pub fn register(&mut self, registry: &mut dyn ExchangeRegistrable) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 91 | pub fn process_incoming(&mut self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 104 | pub fn launch_worker_thread(mut self) -> JoinHandle<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `packed_routing` and `packed_content` are never read [INFO] [stdout] --> src/exchange.rs:114:9 [INFO] [stdout] | [INFO] [stdout] 113 | pub struct Packed { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] 114 | pub packed_routing: Destination, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 115 | pub packed_content: PackedContent [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `ToCore`, `ToDecoder`, `ToDemuxer`, and `ToRemuxer` are never constructed [INFO] [stdout] --> src/exchange.rs:119:5 [INFO] [stdout] | [INFO] [stdout] 118 | pub enum PackedContent { [INFO] [stdout] | ------------- variants in this enum [INFO] [stdout] 119 | ToCore(PackedContentToCore), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 120 | ToDecoder(PackedContentToDecoder), [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 121 | ToDemuxer(PackedContentToDemuxer), [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 122 | ToRemuxer(PackedContentToRemuxer) [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Data`, `DecoderConfig`, and `Command` are never constructed [INFO] [stdout] --> src/exchange.rs:126:5 [INFO] [stdout] | [INFO] [stdout] 125 | pub enum PackedContentToCore { [INFO] [stdout] | ------------------- variants in this enum [INFO] [stdout] 126 | Data(RemuxedData), [INFO] [stdout] | ^^^^ [INFO] [stdout] 127 | DecoderConfig(MseDecoderConfig), [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 128 | Command [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Header`, `Audio`, and `Video` are never constructed [INFO] [stdout] --> src/exchange.rs:132:5 [INFO] [stdout] | [INFO] [stdout] 131 | pub enum RemuxedData { [INFO] [stdout] | ----------- variants in this enum [INFO] [stdout] 132 | Header(Vec), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 133 | Audio(Vec), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 134 | Video(Vec) [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `AudioCodec` and `VideoCodec` are never constructed [INFO] [stdout] --> src/exchange.rs:138:5 [INFO] [stdout] | [INFO] [stdout] 137 | pub enum MseDecoderConfig { [INFO] [stdout] | ---------------- variants in this enum [INFO] [stdout] 138 | AudioCodec(AudioCodecConfig), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 139 | VideoCodec(VideoCodecConfig) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `conf_string`, `audio_codec_type`, and `audio_object_type` are never read [INFO] [stdout] --> src/exchange.rs:145:5 [INFO] [stdout] | [INFO] [stdout] 144 | pub struct AudioCodecConfig { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] 145 | conf_string: String, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 146 | [INFO] [stdout] 147 | pub audio_codec_type: AudioCodecType, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 148 | pub audio_object_type: u8, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `audio_conf` are never used [INFO] [stdout] --> src/exchange.rs:152:12 [INFO] [stdout] | [INFO] [stdout] 151 | impl AudioCodecConfig { [INFO] [stdout] | --------------------- associated items in this implementation [INFO] [stdout] 152 | pub fn new(codec_type: AudioCodecType, object_type: u8) -> AudioCodecConfig { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 160 | pub fn audio_conf(&mut self) -> String { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `conf_string`, `avc_profile_indication`, `avc_profile_compatibility`, and `avc_level_indication` are never read [INFO] [stdout] --> src/exchange.rs:179:9 [INFO] [stdout] | [INFO] [stdout] 178 | pub struct VideoCodecConfig { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] 179 | pub conf_string: String, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 180 | [INFO] [stdout] 181 | pub avc_profile_indication: u8, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 182 | pub avc_profile_compatibility: u8, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 183 | pub avc_level_indication: u8, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `video_conf` are never used [INFO] [stdout] --> src/exchange.rs:187:12 [INFO] [stdout] | [INFO] [stdout] 186 | impl VideoCodecConfig { [INFO] [stdout] | --------------------- associated items in this implementation [INFO] [stdout] 187 | pub fn new(profile_indication: u8, profile_compatibility: u8, level_indication: u8) -> VideoCodecConfig { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 196 | pub fn video_conf(&mut self) -> String { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `PushData`, `StartDecoding`, `StopDecoding`, `CloseWorkerThread`, and `Now` are never constructed [INFO] [stdout] --> src/exchange.rs:203:5 [INFO] [stdout] | [INFO] [stdout] 202 | pub enum PackedContentToDecoder { [INFO] [stdout] | ---------------------- variants in this enum [INFO] [stdout] 203 | PushData(VecDeque), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 204 | [INFO] [stdout] 205 | StartDecoding, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 206 | StopDecoding, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 207 | CloseWorkerThread, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 208 | [INFO] [stdout] 209 | Now [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `PushTag`, `PushFlvHeader`, `StartDemuxing`, `StopDemuxing`, `CloseWorkerThread`, and `Now` are never constructed [INFO] [stdout] --> src/exchange.rs:213:5 [INFO] [stdout] | [INFO] [stdout] 212 | pub enum PackedContentToDemuxer { [INFO] [stdout] | ---------------------- variants in this enum [INFO] [stdout] 213 | PushTag(Tag), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 214 | PushFlvHeader(FlvHeader), [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 215 | [INFO] [stdout] 216 | StartDemuxing, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 217 | StopDemuxing, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 218 | CloseWorkerThread, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 219 | [INFO] [stdout] 220 | Now [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/exchange.rs:224:5 [INFO] [stdout] | [INFO] [stdout] 223 | pub enum PackedContentToRemuxer { [INFO] [stdout] | ---------------------- variants in this enum [INFO] [stdout] 224 | PushTag(Tag), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 225 | PushFlvHeader(FlvHeader), [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 226 | PushMetadata(RawMetaData), [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 227 | [INFO] [stdout] 228 | StartRemuxing, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 229 | StopRemuxing, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 230 | CloseWorkerThread, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 231 | [INFO] [stdout] 232 | Now [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/fmpeg/remuxer.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Remuxer { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 16 | channel_exchange: Option>, [INFO] [stdout] 17 | channel_receiver: mpsc::Receiver, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 18 | channel_sender: mpsc::Sender, [INFO] [stdout] 19 | remuxing: bool, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 20 | [INFO] [stdout] 21 | tags: VecDeque, [INFO] [stdout] | ^^^^ [INFO] [stdout] 22 | metadata: Option, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 23 | flv_header: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 24 | [INFO] [stdout] 25 | ctx: RemuxContext, [INFO] [stdout] | ^^^ [INFO] [stdout] 26 | [INFO] [stdout] 27 | audio_track: TrackContext, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 28 | video_track: TrackContext, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/fmpeg/remuxer.rs:58:12 [INFO] [stdout] | [INFO] [stdout] 57 | impl Remuxer { [INFO] [stdout] | ------------ associated items in this implementation [INFO] [stdout] 58 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 79 | fn set_remuxing(&mut self, flag: bool) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 83 | fn send(&mut self, pack: Packed) -> Result<(), Box> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | fn send_mpeg4_header(&mut self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | fn send_raw_data(&mut self, data: RemuxedData) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 112 | fn remux(&mut self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 249 | pub fn run(&mut self) -> Result<(), Box> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 304 | pub fn launch_worker_thread(mut self) -> JoinHandle<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Utils` is never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Utils; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `str_to_char_array` and `slice_to_char_array` are never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 5 | impl Utils { [INFO] [stdout] | ---------- associated functions in this implementation [INFO] [stdout] 6 | #[inline] [INFO] [stdout] 7 | pub fn str_to_char_array(s: &String) -> [char; 4] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 16 | pub fn slice_to_char_array(slice: &str) -> [char; 4] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `to_float` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:82:8 [INFO] [stdout] | [INFO] [stdout] 75 | impl FixedPoint16 { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 82 | fn to_float(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `to_float` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:137:8 [INFO] [stdout] | [INFO] [stdout] 130 | impl FixedPoint32 { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 137 | fn to_float(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Box` is never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:179:12 [INFO] [stdout] | [INFO] [stdout] 179 | pub struct Box { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FullBox` is never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:184:12 [INFO] [stdout] | [INFO] [stdout] 184 | pub struct FullBox { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FileTypeBoxBuilder` is never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:240:12 [INFO] [stdout] | [INFO] [stdout] 240 | pub struct FileTypeBoxBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `major_brand`, `minor_version`, `compatible_brand`, `compatible_brands`, and `build` are never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:247:12 [INFO] [stdout] | [INFO] [stdout] 246 | impl FileTypeBoxBuilder { [INFO] [stdout] | ----------------------- associated items in this implementation [INFO] [stdout] 247 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 256 | pub fn major_brand(mut self, major_brand: &String) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 262 | pub fn minor_version(mut self, minor_version: u32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 268 | pub fn compatible_brand(mut self, compatible_brand: &String) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 274 | pub fn compatible_brands(mut self, compatible_brands: Vec) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 282 | pub fn build(self) -> FileTypeBox { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MovieBoxBuilder` is never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:307:12 [INFO] [stdout] | [INFO] [stdout] 307 | pub struct MovieBoxBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `movie_header_box`, `track`, and `build` are never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:338:12 [INFO] [stdout] | [INFO] [stdout] 337 | impl MovieBoxBuilder { [INFO] [stdout] | -------------------- associated items in this implementation [INFO] [stdout] 338 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 345 | pub fn movie_header_box(mut self, movie_header_box: MovieHeaderBox) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 350 | pub fn track(mut self, track: TrackBox) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 355 | pub fn build(self) -> MovieBox { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `V0` and `V1` are never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:372:5 [INFO] [stdout] | [INFO] [stdout] 371 | pub enum MovieHeaderBox { [INFO] [stdout] | -------------- variants in this enum [INFO] [stdout] 372 | V0(MovieHeaderBoxV0), [INFO] [stdout] | ^^ [INFO] [stdout] 373 | V1(MovieHeaderBoxV1), [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `MovieHeaderBox` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `matrix` is never read [INFO] [stdout] --> src/fmpeg/mp4head.rs:410:9 [INFO] [stdout] | [INFO] [stdout] 395 | pub struct MovieHeaderBoxV0 { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 410 | pub matrix: [u8; 36], [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MovieHeaderBoxV0` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:434:12 [INFO] [stdout] | [INFO] [stdout] 433 | impl MovieHeaderBoxV0 { [INFO] [stdout] | --------------------- associated function in this implementation [INFO] [stdout] 434 | pub fn new(creation_time: u32, modification_time: u32, timescale: u32, duration: u32, rate: FixedPoint32, volume: FixedPoint16, next_... [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MovieHeaderBoxV0Builder` is never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:500:12 [INFO] [stdout] | [INFO] [stdout] 500 | pub struct MovieHeaderBoxV0Builder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:511:12 [INFO] [stdout] | [INFO] [stdout] 510 | impl MovieHeaderBoxV0Builder { [INFO] [stdout] | ---------------------------- associated items in this implementation [INFO] [stdout] 511 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 524 | pub fn creation_time(mut self, creation_time: u32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 530 | pub fn modification_time(mut self, modification_time: u32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 536 | pub fn timescale(mut self, timescale: u32) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 542 | pub fn duration(mut self, duration: u32) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 548 | pub fn rate(mut self, rate: f32) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 554 | pub fn volume(mut self, volume: f32) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 566 | pub fn next_track_id(mut self, next_track_id: u32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 571 | pub fn build(self) -> MovieHeaderBoxV0 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:613:12 [INFO] [stdout] | [INFO] [stdout] 612 | impl MovieHeaderBoxV1 { [INFO] [stdout] | --------------------- associated function in this implementation [INFO] [stdout] 613 | pub fn new(creation_time: u64, modification_time: u64, timescale: u32, duration: u64, rate: FixedPoint32, volume: FixedPoint16, next_... [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MovieHeaderBoxV1Builder` is never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:674:12 [INFO] [stdout] | [INFO] [stdout] 674 | pub struct MovieHeaderBoxV1Builder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:685:12 [INFO] [stdout] | [INFO] [stdout] 684 | impl MovieHeaderBoxV1Builder { [INFO] [stdout] | ---------------------------- associated items in this implementation [INFO] [stdout] 685 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 698 | pub fn creation_time(mut self, creation_time: u64) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 704 | pub fn modification_time(mut self, modification_time: u64) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 710 | pub fn timescale(mut self, timescale: u32) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 716 | pub fn duration(mut self, duration: u64) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 722 | pub fn rate(mut self, rate: f32) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 728 | pub fn volume(mut self, volume: f32) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 734 | pub fn next_track_id(mut self, next_track_id: u32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 739 | pub fn build(self) -> MovieHeaderBoxV1 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:783:12 [INFO] [stdout] | [INFO] [stdout] 782 | impl TrackBox { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 783 | pub fn new(track_header_box: TrackHeaderBox, media_box: MediaBox) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `V0` and `V1` are never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:795:5 [INFO] [stdout] | [INFO] [stdout] 794 | pub enum TrackHeaderBox { [INFO] [stdout] | -------------- variants in this enum [INFO] [stdout] 795 | V0(TrackHeaderBoxV0), [INFO] [stdout] | ^^ [INFO] [stdout] 796 | V1(TrackHeaderBoxV1), [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `TrackHeaderBox` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `matrix` is never read [INFO] [stdout] --> src/fmpeg/mp4head.rs:839:9 [INFO] [stdout] | [INFO] [stdout] 817 | pub struct TrackHeaderBoxV0 { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 839 | pub matrix: [u8; 36], [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TrackHeaderBoxV0` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:846:12 [INFO] [stdout] | [INFO] [stdout] 845 | impl TrackHeaderBoxV0 { [INFO] [stdout] | --------------------- associated function in this implementation [INFO] [stdout] 846 | pub fn new(creation_time: u32, modification_time: u32, track_id: u32, duration: u32, width: FixedPoint32, height: FixedPoint32) -> Se... [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TrackHeaderBoxV0Builder` is never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:903:12 [INFO] [stdout] | [INFO] [stdout] 903 | pub struct TrackHeaderBoxV0Builder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:913:12 [INFO] [stdout] | [INFO] [stdout] 912 | impl TrackHeaderBoxV0Builder { [INFO] [stdout] | ---------------------------- associated items in this implementation [INFO] [stdout] 913 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 925 | pub fn creation_time(mut self, creation_time: u32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 931 | pub fn modification_time(mut self, modification_time: u32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | pub fn track_id(mut self, track_id: u32) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 943 | pub fn duration(mut self, duration: u32) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 949 | pub fn width(mut self, width: FixedPoint32) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 955 | pub fn height(mut self, height: FixedPoint32) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 960 | pub fn build(self) -> TrackHeaderBoxV0 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `matrix` is never read [INFO] [stdout] --> src/fmpeg/mp4head.rs:995:9 [INFO] [stdout] | [INFO] [stdout] 973 | pub struct TrackHeaderBoxV1 { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 995 | pub matrix: [u8; 36], [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TrackHeaderBoxV1` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:1002:12 [INFO] [stdout] | [INFO] [stdout] 1001 | impl TrackHeaderBoxV1 { [INFO] [stdout] | --------------------- associated function in this implementation [INFO] [stdout] 1002 | pub fn new(creation_time: u64, modification_time: u64, track_id: u32, duration: u64, width: FixedPoint32, height: FixedPoint32) -> Se... [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:1070:12 [INFO] [stdout] | [INFO] [stdout] 1069 | impl MediaBox { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 1070 | pub fn new(media_header: MediaHeaderBoxV0, media_handler_box: HandlerBox, media_info_box: MediaInfoBox) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:1119:12 [INFO] [stdout] | [INFO] [stdout] 1118 | impl MediaHeaderBoxV0 { [INFO] [stdout] | --------------------- associated function in this implementation [INFO] [stdout] 1119 | pub fn new(creation_time: u32, modification_time: u32, timescale: u32, duration: u32, language: u16, quality: u16) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MediaHeaderBoxV0Builder` is never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:1162:12 [INFO] [stdout] | [INFO] [stdout] 1162 | pub struct MediaHeaderBoxV0Builder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:95:13 [INFO] [stdout] | [INFO] [stdout] 95 | let mut buf = std::fs::read("D:/test.flv").unwrap(); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:1173:12 [INFO] [stdout] | [INFO] [stdout] 1171 | impl MediaHeaderBoxV0Builder { [INFO] [stdout] | ---------------------------- associated items in this implementation [INFO] [stdout] 1172 | #[inline] [INFO] [stdout] 1173 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 1185 | pub fn creation_time(mut self, creation_time: u32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1191 | pub fn modification_time(mut self, modification_time: u32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1197 | pub fn timescale(mut self, timescale: u32) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1203 | pub fn duration(mut self, duration: u32) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1209 | pub fn language(mut self, language: u16) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1215 | pub fn quality(mut self, quality: u16) -> Self { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1221 | pub fn build(self) -> MediaHeaderBoxV0 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:1240:12 [INFO] [stdout] | [INFO] [stdout] 1239 | impl HandlerBox { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] 1240 | pub fn new(handler_type: [char; 4], name: String) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `HandlerType` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:1280:10 [INFO] [stdout] | [INFO] [stdout] 1280 | pub enum HandlerType { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `HandlerType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `into` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:1286:12 [INFO] [stdout] | [INFO] [stdout] 1285 | impl HandlerType { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] 1286 | pub fn into(self) -> HandlerBox { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:1309:12 [INFO] [stdout] | [INFO] [stdout] 1308 | impl MediaInfoBox { [INFO] [stdout] | ----------------- associated function in this implementation [INFO] [stdout] 1309 | pub fn new(xmedia_handler_box: XMediaHandlerBox, data_information_box: DataInformationBox, sample_table_box: SampleBoxTableBox) -> Se... [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Video` and `Audio` are never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:1344:5 [INFO] [stdout] | [INFO] [stdout] 1343 | pub enum XMediaHandlerBox { [INFO] [stdout] | ---------------- variants in this enum [INFO] [stdout] 1344 | Video(VideoMediaHandlerBox), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 1345 | Audio(AudioMediaHandlerBox), [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `XMediaHandlerBox` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:1369:12 [INFO] [stdout] | [INFO] [stdout] 1368 | impl VideoMediaHandlerBox { [INFO] [stdout] | ------------------------- associated function in this implementation [INFO] [stdout] 1369 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:1396:12 [INFO] [stdout] | [INFO] [stdout] 1395 | impl AudioMediaHandlerBox { [INFO] [stdout] | ------------------------- associated function in this implementation [INFO] [stdout] 1396 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:1424:12 [INFO] [stdout] | [INFO] [stdout] 1423 | impl DataInformationBox { [INFO] [stdout] | ----------------------- associated function in this implementation [INFO] [stdout] 1424 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:1516:12 [INFO] [stdout] | [INFO] [stdout] 1515 | impl SampleBoxTableBox { [INFO] [stdout] | ---------------------- associated function in this implementation [INFO] [stdout] 1516 | pub fn new(sample_description_table_box: SampleDescriptionTableBox) -> SampleBoxTableBox { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SampleDescriptionTableBoxBuilder` is never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:1569:12 [INFO] [stdout] | [INFO] [stdout] 1569 | pub struct SampleDescriptionTableBoxBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `add_sample_description_table_box`, and `build` are never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:1579:12 [INFO] [stdout] | [INFO] [stdout] 1578 | impl SampleDescriptionTableBoxBuilder { [INFO] [stdout] | ------------------------------------- associated items in this implementation [INFO] [stdout] 1579 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 1590 | pub fn add_sample_description_table_box(mut self, sample_description_table_box: SubSampleDescriptionTableBox) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1596 | pub fn build(self) -> SampleDescriptionTableBox { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Mp4a`, `Mp3`, and `Avc1` are never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:1610:5 [INFO] [stdout] | [INFO] [stdout] 1609 | pub enum SubSampleDescriptionTableBox { [INFO] [stdout] | ---------------------------- variants in this enum [INFO] [stdout] 1610 | Mp4a(Mp4aDescriptionBox), [INFO] [stdout] | ^^^^ [INFO] [stdout] 1611 | Mp3(Mp3DescriptionBox), [INFO] [stdout] | ^^^ [INFO] [stdout] 1612 | Avc1(Avc1DescriptionBox), [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SubSampleDescriptionTableBox` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `size` is never read [INFO] [stdout] --> src/fmpeg/mp4head.rs:2029:9 [INFO] [stdout] | [INFO] [stdout] 2028 | pub struct AudioExtendedDescriptionBox { [INFO] [stdout] | --------------------------- field in this struct [INFO] [stdout] 2029 | pub size: u32, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AudioExtendedDescriptionBox` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:2039:12 [INFO] [stdout] | [INFO] [stdout] 2037 | impl AudioExtendedDescriptionBox { [INFO] [stdout] | -------------------------------- associated function in this implementation [INFO] [stdout] 2038 | #[inline] [INFO] [stdout] 2039 | pub fn new(spec_config: aac_utils::AacAudioSpecConfLike) -> AudioExtendedDescriptionBox { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:2167:12 [INFO] [stdout] | [INFO] [stdout] 2166 | impl Mp4aDescriptionBox { [INFO] [stdout] | ----------------------- associated function in this implementation [INFO] [stdout] 2167 | pub fn new(sample_rate: f32, num_audio_channels: u16, spec_config: aac_utils::AacAudioSpecConfLike) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Mp4aDescriptionBoxBuilder` is never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:2186:12 [INFO] [stdout] | [INFO] [stdout] 2186 | pub struct Mp4aDescriptionBoxBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `sample_rate`, `num_audio_channels`, `spec_config`, and `build` are never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:2193:12 [INFO] [stdout] | [INFO] [stdout] 2192 | impl Mp4aDescriptionBoxBuilder { [INFO] [stdout] | ------------------------------ associated items in this implementation [INFO] [stdout] 2193 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 2203 | pub fn sample_rate(mut self, sample_rate: f32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 2208 | pub fn num_audio_channels(mut self, num_audio_channels: u16) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 2213 | pub fn spec_config(mut self, spec_config: aac_utils::AacAudioSpecConfLike) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 2218 | pub fn build(self) -> Mp4aDescriptionBox { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:2276:12 [INFO] [stdout] | [INFO] [stdout] 2275 | impl Mp3DescriptionBox { [INFO] [stdout] | ---------------------- associated function in this implementation [INFO] [stdout] 2276 | pub fn new(sample_rate: f32, num_audio_channels: u16) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:197:13 [INFO] [stdout] | [INFO] [stdout] 197 | let mut buf = std::fs::read("D:/test_aac.flv").unwrap(); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Mp3DescriptionBoxBuilder` is never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:2294:12 [INFO] [stdout] | [INFO] [stdout] 2294 | pub struct Mp3DescriptionBoxBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `sample_rate`, `num_audio_channels`, and `build` are never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:2300:12 [INFO] [stdout] | [INFO] [stdout] 2299 | impl Mp3DescriptionBoxBuilder { [INFO] [stdout] | ----------------------------- associated items in this implementation [INFO] [stdout] 2300 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 2307 | pub fn sample_rate(mut self, sample_rate: f32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 2312 | pub fn num_audio_channels(mut self, num_audio_channels: u16) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 2317 | pub fn build(self) -> Mp3DescriptionBox { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:2384:12 [INFO] [stdout] | [INFO] [stdout] 2383 | impl Avc1DescriptionBox { [INFO] [stdout] | ----------------------- associated function in this implementation [INFO] [stdout] 2384 | pub fn new(width: u16, height: u16, avcc_box: avc1_utils::AvcCBoxLike) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Avc1DescriptionBoxBuilder` is never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:2446:12 [INFO] [stdout] | [INFO] [stdout] 2446 | pub struct Avc1DescriptionBoxBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `avcc_box`, `set_width`, `set_height`, and `build` are never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:2453:12 [INFO] [stdout] | [INFO] [stdout] 2452 | impl Avc1DescriptionBoxBuilder { [INFO] [stdout] | ------------------------------ associated items in this implementation [INFO] [stdout] 2453 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 2461 | pub fn avcc_box(mut self, avcc_box: avc1_utils::AvcCBoxLike) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 2466 | pub fn set_width(mut self, width: u16) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 2471 | pub fn set_height(mut self, height: u16) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 2476 | pub fn build(self) -> Avc1DescriptionBox { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:2485:12 [INFO] [stdout] | [INFO] [stdout] 2484 | impl TimeToSampleBox { [INFO] [stdout] | -------------------- associated function in this implementation [INFO] [stdout] 2485 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:2511:12 [INFO] [stdout] | [INFO] [stdout] 2510 | impl SampleToChunkBox { [INFO] [stdout] | --------------------- associated function in this implementation [INFO] [stdout] 2511 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:2537:12 [INFO] [stdout] | [INFO] [stdout] 2536 | impl SampleSizeBox { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 2537 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:2564:12 [INFO] [stdout] | [INFO] [stdout] 2563 | impl ChunkOffsetBox { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 2564 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:2597:12 [INFO] [stdout] | [INFO] [stdout] 2596 | impl MovieExtendBox { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 2597 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:2643:12 [INFO] [stdout] | [INFO] [stdout] 2642 | impl TrackExtendsBox { [INFO] [stdout] | -------------------- associated function in this implementation [INFO] [stdout] 2643 | pub fn new(track_id: u32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:1700:9 [INFO] [stdout] | [INFO] [stdout] 1699 | pub enum SamplingFreqIndex { [INFO] [stdout] | ----------------- variants in this enum [INFO] [stdout] 1700 | Freq96000, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 1701 | Freq88200, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 1702 | Freq64000, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1705 | Freq32000, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 1706 | Freq24000, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 1707 | Freq22050, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 1708 | Freq16000, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 1709 | Freq12000, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 1710 | Freq11025, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 1711 | Freq8000, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 1712 | Freq7350, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 1713 | FreqExplicit, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SamplingFreqIndex` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:1762:9 [INFO] [stdout] | [INFO] [stdout] 1761 | pub enum ChannelConfig { [INFO] [stdout] | ------------- variants in this enum [INFO] [stdout] 1762 | AacExtension, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 1763 | Mono, [INFO] [stdout] | ^^^^ [INFO] [stdout] 1764 | Stereo, [INFO] [stdout] 1765 | Three, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 1766 | Four, [INFO] [stdout] | ^^^^ [INFO] [stdout] 1767 | Five, [INFO] [stdout] | ^^^^ [INFO] [stdout] 1768 | Six, [INFO] [stdout] | ^^^ [INFO] [stdout] 1769 | Seven, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 1770 | Eight, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ChannelConfig` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Yes` is never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:1836:9 [INFO] [stdout] | [INFO] [stdout] 1834 | pub enum CoreCoderDependentFlag { [INFO] [stdout] | ---------------------- variant in this enum [INFO] [stdout] 1835 | No, [INFO] [stdout] 1836 | Yes, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CoreCoderDependentFlag` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Yes` is never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:1862:9 [INFO] [stdout] | [INFO] [stdout] 1860 | pub enum ExtensionFlag { [INFO] [stdout] | ------------- variant in this enum [INFO] [stdout] 1861 | No, [INFO] [stdout] 1862 | Yes, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ExtensionFlag` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `VectorConfig` is never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:1891:9 [INFO] [stdout] | [INFO] [stdout] 1889 | pub enum AacAudioSpecConfLike { [INFO] [stdout] | -------------------- variant in this enum [INFO] [stdout] 1890 | AacAudioSpecificConfig(AacAudioSpecificConfigBox), [INFO] [stdout] 1891 | VectorConfig(Vec), [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AacAudioSpecConfLike` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AacAudioSpecificConfigBoxBuilder` is never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:1955:16 [INFO] [stdout] | [INFO] [stdout] 1955 | pub struct AacAudioSpecificConfigBoxBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:1966:16 [INFO] [stdout] | [INFO] [stdout] 1964 | impl AacAudioSpecificConfigBoxBuilder { [INFO] [stdout] | ------------------------------------- associated items in this implementation [INFO] [stdout] 1965 | #[inline] [INFO] [stdout] 1966 | pub fn new() -> AacAudioSpecificConfigBoxBuilder { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 1978 | pub fn set_aac_object_type(mut self, aac_object_type: AacObjectType) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1984 | pub fn set_sampling_freq_index(mut self, sampling_freq_index: SamplingFreqIndex) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1990 | pub fn set_channel_config(mut self, channel_config: ChannelConfig) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1996 | pub fn set_frame_length_flag(mut self, frame_length_flag: FrameLengthFlag) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 2002 | pub fn set_core_coder_dependent_flag(mut self, core_coder_dependent_flag: CoreCoderDependentFlag) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 2008 | pub fn set_extension_flag(mut self, extension_flag: ExtensionFlag) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 2014 | pub fn build(mut self) -> AacAudioSpecificConfigBox { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `AvcCBoxLike` is never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:2327:9 [INFO] [stdout] | [INFO] [stdout] 2326 | pub enum AvcCBoxLike { [INFO] [stdout] | ----------- variant in this enum [INFO] [stdout] 2327 | AvcCBoxLike(Vec) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AvcCBoxLike` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `deferred_set_trun_size` are never used [INFO] [stdout] --> src/fmpeg/mp4frag.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl MovieFragmentBox { [INFO] [stdout] | --------------------- associated items in this implementation [INFO] [stdout] 13 | pub fn new(sequence_number: u32, track_fragment_box: TrackFragmentBox) -> MovieFragmentBox { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | pub fn deferred_set_trun_size(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/fmpeg/mp4frag.rs:57:12 [INFO] [stdout] | [INFO] [stdout] 56 | impl MovieFragmentHeaderBox { [INFO] [stdout] | --------------------------- associated function in this implementation [INFO] [stdout] 57 | pub fn new(sequence_number: u32) -> MovieFragmentHeaderBox { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TrackFragmentBoxBuilder` is never constructed [INFO] [stdout] --> src/fmpeg/mp4frag.rs:100:12 [INFO] [stdout] | [INFO] [stdout] 100 | pub struct TrackFragmentBoxBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/fmpeg/mp4frag.rs:108:12 [INFO] [stdout] | [INFO] [stdout] 107 | impl TrackFragmentBoxBuilder { [INFO] [stdout] | ---------------------------- associated items in this implementation [INFO] [stdout] 108 | pub fn new() -> TrackFragmentBoxBuilder { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn with_track_id(mut self, track_id: u32) -> TrackFragmentBoxBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 122 | pub fn with_media_decode_time(mut self, base_media_decode_time: u32) -> TrackFragmentBoxBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 127 | pub fn with_sample_options(mut self, sample_flag_builder: SampleFlagBuilder) -> TrackFragmentBoxBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 132 | pub fn with_sample_table_box(mut self, sample_table_box: SampleDependencyTableBoxBuilder) -> TrackFragmentBoxBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 137 | pub fn with_track_run_box(mut self, track_run_box: TrackRunBox) -> TrackFragmentBoxBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 142 | pub fn build(self) -> TrackFragmentBox { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/fmpeg/mp4frag.rs:194:12 [INFO] [stdout] | [INFO] [stdout] 193 | impl TrackFragmentHeaderBox { [INFO] [stdout] | --------------------------- associated function in this implementation [INFO] [stdout] 194 | pub fn new(track_id: u32) -> TrackFragmentHeaderBox { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/fmpeg/mp4frag.rs:237:12 [INFO] [stdout] | [INFO] [stdout] 236 | impl TrackFragmentDecodeTimeBox { [INFO] [stdout] | ------------------------------- associated function in this implementation [INFO] [stdout] 237 | pub fn new(base_media_decode_time: u32) -> TrackFragmentDecodeTimeBox { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `VideoKeyFrame`, `VideoInterFrame`, and `Audio` are never constructed [INFO] [stdout] --> src/fmpeg/mp4frag.rs:314:5 [INFO] [stdout] | [INFO] [stdout] 313 | pub enum SampleDependencyTableBoxBuilder { [INFO] [stdout] | ------------------------------- variants in this enum [INFO] [stdout] 314 | VideoKeyFrame, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 315 | VideoInterFrame, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 316 | Audio, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `as_box` is never used [INFO] [stdout] --> src/fmpeg/mp4frag.rs:320:12 [INFO] [stdout] | [INFO] [stdout] 319 | impl SampleDependencyTableBoxBuilder { [INFO] [stdout] | ------------------------------------ method in this implementation [INFO] [stdout] 320 | pub fn as_box(&self) -> SampleDependencyTableBox { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SampleFlagBuilder` is never constructed [INFO] [stdout] --> src/fmpeg/mp4frag.rs:348:12 [INFO] [stdout] | [INFO] [stdout] 348 | pub struct SampleFlagBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/fmpeg/mp4frag.rs:357:12 [INFO] [stdout] | [INFO] [stdout] 356 | impl SampleFlagBuilder { [INFO] [stdout] | ---------------------- associated items in this implementation [INFO] [stdout] 357 | pub fn new() -> SampleFlagBuilder { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 367 | pub fn set_is_leading(mut self, is_leading: bool) -> SampleFlagBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 374 | pub fn set_sample_depends_on(mut self, sample_depends_on: bool) -> SampleFlagBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 381 | pub fn set_sample_is_depended_on(mut self, sample_is_depended_on: bool) -> SampleFlagBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 386 | pub fn set_sample_has_redundancy(mut self, sample_has_redundancy: bool) -> SampleFlagBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 393 | pub fn set_is_non_sync(mut self, is_non_sync: bool) -> SampleFlagBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 398 | pub fn build(self) -> u16 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/fmpeg/mp4frag.rs:448:12 [INFO] [stdout] | [INFO] [stdout] 447 | impl TrackRunBox { [INFO] [stdout] | ---------------- associated function in this implementation [INFO] [stdout] 448 | pub fn new() -> TrackRunBox { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TrackRunBoxBuilder` is never constructed [INFO] [stdout] --> src/fmpeg/mp4frag.rs:495:12 [INFO] [stdout] | [INFO] [stdout] 495 | pub struct TrackRunBoxBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/fmpeg/mp4frag.rs:506:12 [INFO] [stdout] | [INFO] [stdout] 505 | impl TrackRunBoxBuilder { [INFO] [stdout] | ----------------------- associated items in this implementation [INFO] [stdout] 506 | pub fn new() -> TrackRunBoxBuilder { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 519 | pub fn with_sample_duration(mut self, duration: u32) -> TrackRunBoxBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 525 | pub fn with_sample_size(mut self, size: u32) -> TrackRunBoxBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 531 | pub fn with_sample_flags(mut self, flags: u16) -> TrackRunBoxBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 537 | pub fn with_sample_composition_time_offset(mut self, offset: u32) -> TrackRunBoxBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 543 | pub fn with_data_offset(mut self, offset: u32) -> TrackRunBoxBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 548 | pub fn build(self) -> TrackRunBox { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `add_data` are never used [INFO] [stdout] --> src/fmpeg/mp4frag.rs:591:12 [INFO] [stdout] | [INFO] [stdout] 590 | impl MovieDataBox { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 591 | pub fn new(data: Vec) -> MovieDataBox { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 599 | pub fn add_data(mut self, data: Vec) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Audio` and `Video` are never constructed [INFO] [stdout] --> src/fmpeg/remux_context.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 7 | pub enum TrackType { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] 8 | Audio, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 9 | Video, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `track_id`, `sequence_number`, and `track_type` are never read [INFO] [stdout] --> src/fmpeg/remux_context.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct TrackContext { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 13 | pub track_id: u32, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 14 | pub sequence_number: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 15 | [INFO] [stdout] 16 | pub track_type: TrackType, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/fmpeg/remux_context.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl TrackContext { [INFO] [stdout] | ----------------- associated function in this implementation [INFO] [stdout] 20 | pub fn new(track_id: u32, track_type: TrackType) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SampleContext` is never constructed [INFO] [stdout] --> src/fmpeg/remux_context.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 29 | pub struct SampleContext { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SampleContextBuilder` is never constructed [INFO] [stdout] --> src/fmpeg/remux_context.rs:43:12 [INFO] [stdout] | [INFO] [stdout] 43 | pub struct SampleContextBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/fmpeg/remux_context.rs:56:12 [INFO] [stdout] | [INFO] [stdout] 55 | impl SampleContextBuilder { [INFO] [stdout] | ------------------------- associated items in this implementation [INFO] [stdout] 56 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | pub fn set_is_leading(&mut self, is_leading: bool) -> &mut Self { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | pub fn set_is_non_sync(&mut self, is_non_sync: bool) -> &mut Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 83 | pub fn set_is_keyframe(&mut self, is_keyframe: bool) -> &mut Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 89 | pub fn set_has_redundancy(&mut self, has_redundancy: bool) -> &mut Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 95 | pub fn set_decode_time(&mut self, decode_time: u32) -> &mut Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | pub fn set_composition_time_offset(&mut self, composition_time_offset: u32) -> &mut Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | pub fn set_sample_duration(&mut self, sample_duration: u32) -> &mut Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 113 | pub fn set_sample_size(&mut self, sample_size: u32) -> &mut Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 119 | pub fn build(&self) -> SampleContext { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TIME_SCALE` is never used [INFO] [stdout] --> src/fmpeg/remux_context.rs:134:11 [INFO] [stdout] | [INFO] [stdout] 134 | pub const TIME_SCALE: u32 = 24000; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/fmpeg/remux_context.rs:140:9 [INFO] [stdout] | [INFO] [stdout] 139 | pub struct RemuxContext { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 140 | pub fps: f64, [INFO] [stdout] | ^^^ [INFO] [stdout] 141 | pub fps_num: u32, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 142 | [INFO] [stdout] 143 | pub duration_ms: u32, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 144 | [INFO] [stdout] 145 | pub width: f64, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 146 | pub height: f64, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 147 | [INFO] [stdout] 148 | pub has_audio: bool, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 149 | pub has_video: bool, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 150 | [INFO] [stdout] 151 | pub audio_codec_id: u8, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 152 | pub audio_codec_type: AudioCodecType, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 153 | pub audio_data_rate: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 156 | pub audio_sample_rate: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 157 | pub audio_channels: u8, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 158 | pub audio_channels_extended: u8, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 159 | pub audio_aac_info: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 162 | pub video_codec_id: u8, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 163 | pub video_codec_type: VideoCodecType, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 166 | pub video_data_rate: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 167 | pub video_avcc_info: AvcCBoxLike, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 170 | pub major_brand: String, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 171 | pub minor_version: String, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 172 | pub compatible_brands: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 173 | [INFO] [stdout] 174 | header_sent: bool, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 175 | flv_header_configured: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 176 | metadata_configured: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 177 | video_metadata_configured: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 178 | audio_metadata_configured: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 179 | [INFO] [stdout] 180 | pub(crate) sequence_number: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/fmpeg/remux_context.rs:214:12 [INFO] [stdout] | [INFO] [stdout] 213 | impl RemuxContext { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 214 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 254 | pub fn parse_flv_header(&mut self, header: &FlvHeader) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 260 | pub fn parse_metadata(&mut self, metadata: &RawMetaData) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 323 | const AAC_SAMPLE_RATES: [u32; 13] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 329 | pub fn configure_audio_metadata(&mut self, audio_metadata: &AudioParseResult) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 383 | pub fn configure_video_metadata(&mut self, video_metadata: &VideoParseResult) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 417 | pub fn is_metadata_complete(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 421 | pub fn is_configured(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 436 | pub fn is_header_sent(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 440 | pub fn set_header_sent(&mut self, flag: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_timescale` is never used [INFO] [stdout] --> src/fmpeg/parser.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 8 | pub fn parse_timescale(timestamp_ms: u32) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_timescale_accurate` is never used [INFO] [stdout] --> src/fmpeg/parser.rs:23:4 [INFO] [stdout] | [INFO] [stdout] 23 | fn parse_timescale_accurate(timestamp_ms: f32) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_mp3_timescale` is never used [INFO] [stdout] --> src/fmpeg/parser.rs:32:8 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn parse_mp3_timescale(sample_rate: u32, mp3version: Mp3Version) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_aac_timescale` is never used [INFO] [stdout] --> src/fmpeg/parser.rs:51:8 [INFO] [stdout] | [INFO] [stdout] 51 | pub fn parse_aac_timescale(sample_rate: u32) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_avc_timescale` is never used [INFO] [stdout] --> src/fmpeg/parser.rs:58:8 [INFO] [stdout] | [INFO] [stdout] 58 | pub fn parse_avc_timescale(fps: f32) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AudioParseResult` is never used [INFO] [stdout] --> src/fmpeg/parser.rs:62:10 [INFO] [stdout] | [INFO] [stdout] 62 | pub enum AudioParseResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `VideoParseResult` is never used [INFO] [stdout] --> src/fmpeg/parser.rs:68:10 [INFO] [stdout] | [INFO] [stdout] 68 | pub enum VideoParseResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/flv/decoder.rs:47:12 [INFO] [stdout] | [INFO] [stdout] 34 | impl Decoder { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn push_data(&mut self, data: &mut VecDeque) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn push_bytes(&mut self, bytes: &[u8]) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 82 | pub fn drain_u16_le(&mut self) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 98 | pub fn drain_u24_le(&mut self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 116 | pub fn drain_u32_le(&mut self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 136 | pub fn drain_u64(&mut self) -> u64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn drain_i8(&mut self) -> i8 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 172 | pub fn drain_i32(&mut self) -> i32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 182 | pub fn drain_i64(&mut self) -> i64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 210 | pub fn drain_f64_le(&mut self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 224 | pub fn drain_f32_le(&mut self) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 234 | pub fn drain_f32(&mut self) -> f32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Avc1ParseResult` is never used [INFO] [stdout] --> src/fmpeg/parser.rs:72:10 [INFO] [stdout] | [INFO] [stdout] 72 | pub enum Avc1ParseResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AvcNalu` is never constructed [INFO] [stdout] --> src/fmpeg/parser.rs:78:12 [INFO] [stdout] | [INFO] [stdout] 78 | pub struct AvcNalu { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AudioConfigurationLike` is never used [INFO] [stdout] --> src/fmpeg/parser.rs:99:10 [INFO] [stdout] | [INFO] [stdout] 99 | pub enum AudioConfigurationLike { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Mp3ParseResult` is never constructed [INFO] [stdout] --> src/fmpeg/parser.rs:161:12 [INFO] [stdout] | [INFO] [stdout] 161 | pub struct Mp3ParseResult { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AUDIO_SAMPLE_RATE_TABLE_M10` is never used [INFO] [stdout] --> src/fmpeg/parser.rs:172:11 [INFO] [stdout] | [INFO] [stdout] 172 | pub const AUDIO_SAMPLE_RATE_TABLE_M10: [u32; 4] = [44100, 48000, 32000, 0]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AUDIO_SAMPLE_RATE_TABLE_M20` is never used [INFO] [stdout] --> src/fmpeg/parser.rs:173:11 [INFO] [stdout] | [INFO] [stdout] 173 | pub const AUDIO_SAMPLE_RATE_TABLE_M20: [u32; 4] = [22050, 24000, 16000, 0]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AUDIO_SAMPLE_RATE_TABLE_M25` is never used [INFO] [stdout] --> src/fmpeg/parser.rs:174:11 [INFO] [stdout] | [INFO] [stdout] 174 | pub const AUDIO_SAMPLE_RATE_TABLE_M25: [u32; 4] = [11025, 12000, 8000, 0]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AUDIO_BITRATE_TABLE_L1` is never used [INFO] [stdout] --> src/fmpeg/parser.rs:176:11 [INFO] [stdout] | [INFO] [stdout] 176 | pub const AUDIO_BITRATE_TABLE_L1: [u32; 16] = [0, 32, 64, 96, 128, 160, 192, 224, 256, 288, 320, 352, 384, 416, 448, 0]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `signature`, `version`, and `data_offset` are never read [INFO] [stdout] --> src/flv/header.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct FlvHeader { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 6 | pub signature: [u8; 3], [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 7 | pub version: u8, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 10 | pub data_offset: u32, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FlvHeader` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AUDIO_BITRATE_TABLE_L2` is never used [INFO] [stdout] --> src/fmpeg/parser.rs:177:11 [INFO] [stdout] | [INFO] [stdout] 177 | pub const AUDIO_BITRATE_TABLE_L2: [u32; 16] = [0, 32, 48, 56, 64, 80, 96, 112, 128, 160, 192, 224, 256, 320, 384, 0]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AUDIO_BITRATE_TABLE_L3` is never used [INFO] [stdout] --> src/fmpeg/parser.rs:178:11 [INFO] [stdout] | [INFO] [stdout] 178 | pub const AUDIO_BITRATE_TABLE_L3: [u32; 16] = [0, 32, 40, 48, 56, 64, 80, 96, 112, 128, 160, 192, 224, 256, 320, 0]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MP3_SYNC_WORD` is never used [INFO] [stdout] --> src/fmpeg/parser.rs:180:7 [INFO] [stdout] | [INFO] [stdout] 180 | const MP3_SYNC_WORD: u16 = 0x07FF; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AacSequenceHeader` is never constructed [INFO] [stdout] --> src/fmpeg/parser.rs:182:12 [INFO] [stdout] | [INFO] [stdout] 182 | pub struct AacSequenceHeader { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Parser` is never constructed [INFO] [stdout] --> src/fmpeg/parser.rs:189:12 [INFO] [stdout] | [INFO] [stdout] 189 | pub struct Parser; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `sound_rate`, `sound_size`, and `sound_type` are never read [INFO] [stdout] --> src/flv/header.rs:32:9 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct AudioTagHeader { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 32 | pub sound_rate: u8, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 33 | // UB1 [INFO] [stdout] 34 | pub sound_size: bool, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 35 | // UB1 [INFO] [stdout] 36 | pub sound_type: bool, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AudioTagHeader` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated functions are never used [INFO] [stdout] --> src/fmpeg/parser.rs:192:12 [INFO] [stdout] | [INFO] [stdout] 191 | impl Parser { [INFO] [stdout] | ----------- associated functions in this implementation [INFO] [stdout] 192 | pub fn parse_audio(tag: &Tag) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 221 | fn parse_mp3(header: &AudioTagHeader, body: &VecDeque) -> Result> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 292 | fn parse_aac(header: &AudioTagHeader, body: &VecDeque) -> Result> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 304 | fn parse_aac_seq_hdr(body: &VecDeque) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 327 | fn parse_aac_raw(body: &VecDeque) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 331 | pub fn parse_video(tag: &Tag) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 355 | fn parse_avc(header: &VideoTagHeader, body: &VecDeque) -> Result> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 370 | fn parse_avc_nalu(header: &VideoTagHeader, mut payload: VecDeque) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Encoder` is never constructed [INFO] [stdout] --> src/fmpeg/encoder.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Encoder; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DEFAULT_VIDEO_TRACK_ID` is never used [INFO] [stdout] --> src/fmpeg/encoder.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | pub const DEFAULT_VIDEO_TRACK_ID: u32 = 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DEFAULT_AUDIO_TRACK_ID` is never used [INFO] [stdout] --> src/fmpeg/encoder.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | pub const DEFAULT_AUDIO_TRACK_ID: u32 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/flv/header.rs:43:12 [INFO] [stdout] | [INFO] [stdout] 42 | impl AudioTagHeader { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 43 | pub fn new(sound_format: u8, sound_rate: u8, sound_size: bool, sound_type: bool, aac_packet_type: Option) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated functions are never used [INFO] [stdout] --> src/fmpeg/encoder.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl Encoder { [INFO] [stdout] | ------------ associated functions in this implementation [INFO] [stdout] 13 | pub fn encode_ftyp(ctx: &RemuxContext) -> FileTypeBox { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | pub fn encode_moov(ctx: &RemuxContext) -> MovieBox { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | pub fn encode_mhdv(ctx: &RemuxContext) -> MovieHeaderBox { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | pub fn encode_trak(ctx: &RemuxContext, track_id: u32, media_box: MediaBox) -> mp4head::TrackBox { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 64 | pub fn encode_mdia(ctx: &RemuxContext, handler_type: HandlerType) -> MediaBox { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | pub fn encode_mdhd(ctx: &RemuxContext) -> mp4head::MediaHeaderBoxV0 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 85 | pub fn encode_hdlr(ctx: &RemuxContext, handler_type: HandlerType) -> mp4head::HandlerBox { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 91 | pub fn encode_minf(ctx: &RemuxContext, handler_type: HandlerType) -> mp4head::MediaInfoBox { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 157 | pub fn encode_moof(ctx: &mut RemuxContext, track_ctx: &mut TrackContext, encoding_ctx: &mut SampleContext) -> MovieFragmentBox { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 167 | fn encode_traf(ctx: &mut RemuxContext, track_ctx: &mut TrackContext, encoding_ctx: &mut SampleContext) -> TrackFragmentBox { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 208 | pub fn encode_mdat(raw_data: Vec) -> MovieDataBox { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `composition_time` is never read [INFO] [stdout] --> src/flv/header.rs:76:9 [INFO] [stdout] | [INFO] [stdout] 66 | pub struct VideoTagHeader { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 76 | pub composition_time: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `VideoTagHeader` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/flv/header.rs:80:12 [INFO] [stdout] | [INFO] [stdout] 79 | impl VideoTagHeader { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 80 | pub fn new(frame_type: u8, codec_id: u8, avc_packet_type: Option, composition_time: Option) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `EncryptionFilter` and `SelectiveEncryptionFilter` are never constructed [INFO] [stdout] --> src/flv/header.rs:116:5 [INFO] [stdout] | [INFO] [stdout] 115 | pub enum FilterParameters { [INFO] [stdout] | ---------------- variants in this enum [INFO] [stdout] 116 | EncryptionFilter(EncryptionFilterParameters), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 117 | SelectiveEncryptionFilter(SelectiveEncryptionFilterParameters), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FilterParameters` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `parse` is never used [INFO] [stdout] --> src/flv/header.rs:131:12 [INFO] [stdout] | [INFO] [stdout] 130 | impl SelectiveEncryptionFilterParameters { [INFO] [stdout] | ---------------------------------------- associated function in this implementation [INFO] [stdout] 131 | pub fn parse(decoder: &mut Decoder) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `filter`, `timestamp_short`, `timestamp_extended`, `stream_id`, `encryption_tag_header`, and `filter_parameters` are never read [INFO] [stdout] --> src/flv/tag.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Tag { [INFO] [stdout] | --- fields in this struct [INFO] [stdout] 8 | pub filter: bool, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 11 | pub timestamp_short: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 12 | pub timestamp_extended: u8, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 13 | pub timestamp: u32, [INFO] [stdout] 14 | pub stream_id: u32, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 15 | pub tag_header: TagHeader, [INFO] [stdout] 16 | pub encryption_tag_header: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 17 | pub filter_parameters: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Tag` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Encryption` is never constructed [INFO] [stdout] --> src/flv/tag.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 22 | pub enum TagType { [INFO] [stdout] | ------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 26 | Encryption, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TagType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/flv/tag.rs:55:15 [INFO] [stdout] | [INFO] [stdout] 55 | Encrypted(EncryptedTagBody), [INFO] [stdout] | --------- ^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `TagBody` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 55 - Encrypted(EncryptedTagBody), [INFO] [stdout] 55 + Encrypted(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Placeholder` is never constructed [INFO] [stdout] --> src/flv/tag.rs:63:5 [INFO] [stdout] | [INFO] [stdout] 59 | pub enum NormalTagBody { [INFO] [stdout] | ------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 63 | Placeholder, // todo: temporary [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NormalTagBody` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Audio`, `Video`, and `Script` are never constructed [INFO] [stdout] --> src/flv/tag.rs:97:5 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum EncryptedTagBody { [INFO] [stdout] | ---------------- variants in this enum [INFO] [stdout] 97 | Audio(Vec), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 98 | Video(Vec), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 99 | Script(ScriptTagBody), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EncryptedTagBody` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/flv/script.rs:43:13 [INFO] [stdout] | [INFO] [stdout] 43 | Boolean(u8), [INFO] [stdout] | ------- ^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `ScriptData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 43 - Boolean(u8), [INFO] [stdout] 43 + Boolean(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/flv/script.rs:45:12 [INFO] [stdout] | [INFO] [stdout] 45 | Object(ScriptDataObject), [INFO] [stdout] | ------ ^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `ScriptData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 45 - Object(ScriptDataObject), [INFO] [stdout] 45 + Object(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/flv/script.rs:49:15 [INFO] [stdout] | [INFO] [stdout] 49 | Reference(u16), [INFO] [stdout] | --------- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `ScriptData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 49 - Reference(u16), [INFO] [stdout] 49 + Reference(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/flv/script.rs:50:15 [INFO] [stdout] | [INFO] [stdout] 50 | EcmaArray(ScriptDataEcmaArray), [INFO] [stdout] | --------- ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `ScriptData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 50 - EcmaArray(ScriptDataEcmaArray), [INFO] [stdout] 50 + EcmaArray(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/flv/script.rs:52:17 [INFO] [stdout] | [INFO] [stdout] 52 | StrictArray(ScriptStrictArray), [INFO] [stdout] | ----------- ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `ScriptData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 52 - StrictArray(ScriptStrictArray), [INFO] [stdout] 52 + StrictArray(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/flv/script.rs:53:10 [INFO] [stdout] | [INFO] [stdout] 53 | Date(ScriptDataDate), [INFO] [stdout] | ---- ^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `ScriptData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 53 - Date(ScriptDataDate), [INFO] [stdout] 53 + Date(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `MovieClip`, `Null`, and `Undefined` are never constructed [INFO] [stdout] --> src/flv/script.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 41 | pub enum ScriptData { [INFO] [stdout] | ---------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 46 | MovieClip, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 47 | Null, [INFO] [stdout] | ^^^^ [INFO] [stdout] 48 | Undefined, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ScriptData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `properties` is never read [INFO] [stdout] --> src/flv/script.rs:60:9 [INFO] [stdout] | [INFO] [stdout] 59 | pub struct ScriptDataObject { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] 60 | pub properties: Vec, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ScriptDataObject` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `parse` is never used [INFO] [stdout] --> src/flv/script.rs:65:12 [INFO] [stdout] | [INFO] [stdout] 63 | impl ScriptDataObject { [INFO] [stdout] | --------------------- associated function in this implementation [INFO] [stdout] 64 | [INFO] [stdout] 65 | pub fn parse(data: &mut Decoder) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `length` is never read [INFO] [stdout] --> src/flv/script.rs:103:9 [INFO] [stdout] | [INFO] [stdout] 102 | pub struct ScriptDataString { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] 103 | pub length: u16, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ScriptDataString` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `length` is never read [INFO] [stdout] --> src/flv/script.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 133 | pub struct ScriptDataLongString { [INFO] [stdout] | -------------------- field in this struct [INFO] [stdout] 134 | pub length: u32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ScriptDataLongString` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `parse` is never used [INFO] [stdout] --> src/flv/script.rs:139:12 [INFO] [stdout] | [INFO] [stdout] 138 | impl ScriptDataLongString { [INFO] [stdout] | ------------------------- associated function in this implementation [INFO] [stdout] 139 | pub fn parse(data: &mut Decoder) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `length` and `values` are never read [INFO] [stdout] --> src/flv/script.rs:197:9 [INFO] [stdout] | [INFO] [stdout] 196 | pub struct ScriptStrictArray { [INFO] [stdout] | ----------------- fields in this struct [INFO] [stdout] 197 | pub length: u32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 198 | pub values: Vec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ScriptStrictArray` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `parse` is never used [INFO] [stdout] --> src/flv/script.rs:202:12 [INFO] [stdout] | [INFO] [stdout] 201 | impl ScriptStrictArray { [INFO] [stdout] | ---------------------- associated function in this implementation [INFO] [stdout] 202 | pub fn parse(data: &mut Decoder) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `date` and `local_time_offset` are never read [INFO] [stdout] --> src/flv/script.rs:229:9 [INFO] [stdout] | [INFO] [stdout] 228 | pub struct ScriptDataDate { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 229 | pub date: f64, [INFO] [stdout] | ^^^^ [INFO] [stdout] 230 | pub local_time_offset: i16, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ScriptDataDate` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `parse` is never used [INFO] [stdout] --> src/flv/script.rs:234:12 [INFO] [stdout] | [INFO] [stdout] 233 | impl ScriptDataDate { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 234 | pub fn parse(data: &mut Decoder) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MetaData` is never constructed [INFO] [stdout] --> src/flv/meta.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct MetaData { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/flv/meta.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl MetaData { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 23 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `try_get_boolean` is never used [INFO] [stdout] --> src/flv/meta.rs:90:12 [INFO] [stdout] | [INFO] [stdout] 64 | impl RawMetaData { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 90 | pub fn try_get_boolean(&self, key: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `XMPData` is never constructed [INFO] [stdout] --> src/flv/meta.rs:98:12 [INFO] [stdout] | [INFO] [stdout] 98 | pub struct XMPData { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/flv/meta.rs:103:12 [INFO] [stdout] | [INFO] [stdout] 102 | impl XMPData { [INFO] [stdout] | ------------ associated function in this implementation [INFO] [stdout] 103 | pub fn new(xmp: String) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `IReader` is never used [INFO] [stdout] --> src/io/reader.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | pub trait IReader { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LocalReader` is never constructed [INFO] [stdout] --> src/io/reader.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct LocalReader { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `read_file`, and `read_bytes` are never used [INFO] [stdout] --> src/io/reader.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 21 | impl LocalReader { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 22 | pub fn new(filename: &str) -> LocalReader { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | pub fn read_file(&mut self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn read_bytes(&mut self, buffer: &mut [u8]) -> Result<(), std::io::Error> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `read_bit_safe` is never used [INFO] [stdout] --> src/io/bit.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 5 | impl BitIO { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 25 | pub fn read_bit_safe(&self, index: usize) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LittleEndian` is never constructed [INFO] [stdout] --> src/io/bit.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 45 | pub enum UIntParserEndian { [INFO] [stdout] | ---------------- variant in this enum [INFO] [stdout] 46 | LittleEndian, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `endian` is never read [INFO] [stdout] --> src/io/bit.rs:51:5 [INFO] [stdout] | [INFO] [stdout] 49 | pub struct U16BitIO { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 50 | pub(crate) data: [u8; 2], [INFO] [stdout] 51 | endian: UIntParserEndian [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_data` is never used [INFO] [stdout] --> src/io/bit.rs:56:12 [INFO] [stdout] | [INFO] [stdout] 54 | impl U16BitIO { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] 55 | #[inline] [INFO] [stdout] 56 | pub fn get_data(&self) -> [u8; 2] { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `endian` is never read [INFO] [stdout] --> src/io/bit.rs:120:5 [INFO] [stdout] | [INFO] [stdout] 118 | pub struct U32BitIO { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 119 | data: [u8; 4], [INFO] [stdout] 120 | endian: UIntParserEndian [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `read_at` and `read_range` are never used [INFO] [stdout] --> src/io/bit.rs:146:12 [INFO] [stdout] | [INFO] [stdout] 123 | impl U32BitIO { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 146 | pub fn read_at(&mut self, bit_offset: usize) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 156 | pub fn read_range(&mut self, start: usize, end: usize) -> u32 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `push_data_to_decoder` is never used [INFO] [stdout] --> src/core.rs:62:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl Core { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 62 | pub fn push_data_to_decoder(&self, data: &mut VecDeque) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_exchange_sender` and `get_sender` are never used [INFO] [stdout] --> src/exchange.rs:78:12 [INFO] [stdout] | [INFO] [stdout] 68 | impl Exchange { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 78 | pub fn get_exchange_sender(&self) -> mpsc::Sender { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 82 | pub fn get_sender(&self, channel_dest: Destination) -> Option> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Command` is never constructed [INFO] [stdout] --> src/exchange.rs:128:5 [INFO] [stdout] | [INFO] [stdout] 125 | pub enum PackedContentToCore { [INFO] [stdout] | ------------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 128 | Command [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `PushData` is never constructed [INFO] [stdout] --> src/exchange.rs:203:5 [INFO] [stdout] | [INFO] [stdout] 202 | pub enum PackedContentToDecoder { [INFO] [stdout] | ---------------------- variant in this enum [INFO] [stdout] 203 | PushData(VecDeque), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `str_to_char_array` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 5 | impl Utils { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] 6 | #[inline] [INFO] [stdout] 7 | pub fn str_to_char_array(s: &String) -> [char; 4] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `to_float` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:82:8 [INFO] [stdout] | [INFO] [stdout] 75 | impl FixedPoint16 { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 82 | fn to_float(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `to_float` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:137:8 [INFO] [stdout] | [INFO] [stdout] 130 | impl FixedPoint32 { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 137 | fn to_float(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Box` is never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:179:12 [INFO] [stdout] | [INFO] [stdout] 179 | pub struct Box { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FullBox` is never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:184:12 [INFO] [stdout] | [INFO] [stdout] 184 | pub struct FullBox { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `compatible_brand` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:268:12 [INFO] [stdout] | [INFO] [stdout] 246 | impl FileTypeBoxBuilder { [INFO] [stdout] | ----------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 268 | pub fn compatible_brand(mut self, compatible_brand: &String) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `V1` is never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:373:5 [INFO] [stdout] | [INFO] [stdout] 371 | pub enum MovieHeaderBox { [INFO] [stdout] | -------------- variant in this enum [INFO] [stdout] 372 | V0(MovieHeaderBoxV0), [INFO] [stdout] 373 | V1(MovieHeaderBoxV1), [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `MovieHeaderBox` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `matrix` is never read [INFO] [stdout] --> src/fmpeg/mp4head.rs:410:9 [INFO] [stdout] | [INFO] [stdout] 395 | pub struct MovieHeaderBoxV0 { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 410 | pub matrix: [u8; 36], [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MovieHeaderBoxV0` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:613:12 [INFO] [stdout] | [INFO] [stdout] 612 | impl MovieHeaderBoxV1 { [INFO] [stdout] | --------------------- associated function in this implementation [INFO] [stdout] 613 | pub fn new(creation_time: u64, modification_time: u64, timescale: u32, duration: u64, rate: FixedPoint32, volume: FixedPoint16, next_... [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MovieHeaderBoxV1Builder` is never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:674:12 [INFO] [stdout] | [INFO] [stdout] 674 | pub struct MovieHeaderBoxV1Builder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:685:12 [INFO] [stdout] | [INFO] [stdout] 684 | impl MovieHeaderBoxV1Builder { [INFO] [stdout] | ---------------------------- associated items in this implementation [INFO] [stdout] 685 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 698 | pub fn creation_time(mut self, creation_time: u64) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 704 | pub fn modification_time(mut self, modification_time: u64) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 710 | pub fn timescale(mut self, timescale: u32) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 716 | pub fn duration(mut self, duration: u64) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 722 | pub fn rate(mut self, rate: f32) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 728 | pub fn volume(mut self, volume: f32) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 734 | pub fn next_track_id(mut self, next_track_id: u32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 739 | pub fn build(self) -> MovieHeaderBoxV1 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `V1` is never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:796:5 [INFO] [stdout] | [INFO] [stdout] 794 | pub enum TrackHeaderBox { [INFO] [stdout] | -------------- variant in this enum [INFO] [stdout] 795 | V0(TrackHeaderBoxV0), [INFO] [stdout] 796 | V1(TrackHeaderBoxV1), [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `TrackHeaderBox` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `matrix` is never read [INFO] [stdout] --> src/fmpeg/mp4head.rs:839:9 [INFO] [stdout] | [INFO] [stdout] 817 | pub struct TrackHeaderBoxV0 { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 839 | pub matrix: [u8; 36], [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TrackHeaderBoxV0` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `matrix` is never read [INFO] [stdout] --> src/fmpeg/mp4head.rs:995:9 [INFO] [stdout] | [INFO] [stdout] 973 | pub struct TrackHeaderBoxV1 { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 995 | pub matrix: [u8; 36], [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TrackHeaderBoxV1` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:1002:12 [INFO] [stdout] | [INFO] [stdout] 1001 | impl TrackHeaderBoxV1 { [INFO] [stdout] | --------------------- associated function in this implementation [INFO] [stdout] 1002 | pub fn new(creation_time: u64, modification_time: u64, track_id: u32, duration: u64, width: FixedPoint32, height: FixedPoint32) -> Se... [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `language` and `quality` are never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:1209:12 [INFO] [stdout] | [INFO] [stdout] 1171 | impl MediaHeaderBoxV0Builder { [INFO] [stdout] | ---------------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 1209 | pub fn language(mut self, language: u16) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1215 | pub fn quality(mut self, quality: u16) -> Self { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `size` is never read [INFO] [stdout] --> src/fmpeg/mp4head.rs:2029:9 [INFO] [stdout] | [INFO] [stdout] 2028 | pub struct AudioExtendedDescriptionBox { [INFO] [stdout] | --------------------------- field in this struct [INFO] [stdout] 2029 | pub size: u32, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AudioExtendedDescriptionBox` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:1700:9 [INFO] [stdout] | [INFO] [stdout] 1699 | pub enum SamplingFreqIndex { [INFO] [stdout] | ----------------- variants in this enum [INFO] [stdout] 1700 | Freq96000, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 1701 | Freq88200, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 1702 | Freq64000, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1705 | Freq32000, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 1706 | Freq24000, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 1707 | Freq22050, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 1708 | Freq16000, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 1709 | Freq12000, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 1710 | Freq11025, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 1711 | Freq8000, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 1712 | Freq7350, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 1713 | FreqExplicit, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SamplingFreqIndex` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:1762:9 [INFO] [stdout] | [INFO] [stdout] 1761 | pub enum ChannelConfig { [INFO] [stdout] | ------------- variants in this enum [INFO] [stdout] 1762 | AacExtension, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 1763 | Mono, [INFO] [stdout] | ^^^^ [INFO] [stdout] 1764 | Stereo, [INFO] [stdout] 1765 | Three, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 1766 | Four, [INFO] [stdout] | ^^^^ [INFO] [stdout] 1767 | Five, [INFO] [stdout] | ^^^^ [INFO] [stdout] 1768 | Six, [INFO] [stdout] | ^^^ [INFO] [stdout] 1769 | Seven, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 1770 | Eight, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ChannelConfig` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Yes` is never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:1836:9 [INFO] [stdout] | [INFO] [stdout] 1834 | pub enum CoreCoderDependentFlag { [INFO] [stdout] | ---------------------- variant in this enum [INFO] [stdout] 1835 | No, [INFO] [stdout] 1836 | Yes, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CoreCoderDependentFlag` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Yes` is never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:1862:9 [INFO] [stdout] | [INFO] [stdout] 1860 | pub enum ExtensionFlag { [INFO] [stdout] | ------------- variant in this enum [INFO] [stdout] 1861 | No, [INFO] [stdout] 1862 | Yes, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ExtensionFlag` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AacAudioSpecificConfigBoxBuilder` is never constructed [INFO] [stdout] --> src/fmpeg/mp4head.rs:1955:16 [INFO] [stdout] | [INFO] [stdout] 1955 | pub struct AacAudioSpecificConfigBoxBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/fmpeg/mp4head.rs:1966:16 [INFO] [stdout] | [INFO] [stdout] 1964 | impl AacAudioSpecificConfigBoxBuilder { [INFO] [stdout] | ------------------------------------- associated items in this implementation [INFO] [stdout] 1965 | #[inline] [INFO] [stdout] 1966 | pub fn new() -> AacAudioSpecificConfigBoxBuilder { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 1978 | pub fn set_aac_object_type(mut self, aac_object_type: AacObjectType) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1984 | pub fn set_sampling_freq_index(mut self, sampling_freq_index: SamplingFreqIndex) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1990 | pub fn set_channel_config(mut self, channel_config: ChannelConfig) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1996 | pub fn set_frame_length_flag(mut self, frame_length_flag: FrameLengthFlag) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 2002 | pub fn set_core_coder_dependent_flag(mut self, core_coder_dependent_flag: CoreCoderDependentFlag) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 2008 | pub fn set_extension_flag(mut self, extension_flag: ExtensionFlag) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 2014 | pub fn build(mut self) -> AacAudioSpecificConfigBox { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `with_sample_options` is never used [INFO] [stdout] --> src/fmpeg/mp4frag.rs:127:12 [INFO] [stdout] | [INFO] [stdout] 107 | impl TrackFragmentBoxBuilder { [INFO] [stdout] | ---------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 127 | pub fn with_sample_options(mut self, sample_flag_builder: SampleFlagBuilder) -> TrackFragmentBoxBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `add_data` is never used [INFO] [stdout] --> src/fmpeg/mp4frag.rs:599:12 [INFO] [stdout] | [INFO] [stdout] 590 | impl MovieDataBox { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 599 | pub fn add_data(mut self, data: Vec) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AudioConfigurationLike` is never used [INFO] [stdout] --> src/fmpeg/parser.rs:99:10 [INFO] [stdout] | [INFO] [stdout] 99 | pub enum AudioConfigurationLike { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `layer` and `bitrate` are never read [INFO] [stdout] --> src/fmpeg/parser.rs:163:9 [INFO] [stdout] | [INFO] [stdout] 161 | pub struct Mp3ParseResult { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 162 | pub version: Mp3Version, [INFO] [stdout] 163 | pub layer: Mp3Layer, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 164 | pub sample_rate: u32, [INFO] [stdout] 165 | pub bitrate: u32, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.77s [INFO] running `Command { std: "docker" "inspect" "a74c40342245da2504b61677bb0b6392bb7cdd6eb3fc5e783b41396f48c4b7f0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a74c40342245da2504b61677bb0b6392bb7cdd6eb3fc5e783b41396f48c4b7f0", kill_on_drop: false }` [INFO] [stdout] a74c40342245da2504b61677bb0b6392bb7cdd6eb3fc5e783b41396f48c4b7f0