diff --git a/src/playlist.rs b/src/playlist.rs index 13417ab..e9ec4d0 100644 --- a/src/playlist.rs +++ b/src/playlist.rs @@ -171,7 +171,7 @@ pub struct VariantStream { // pub bandwidth: String, pub average_bandwidth: Option, - pub codecs: String, + pub codecs: Option, pub resolution: Option, pub frame_rate: Option, pub audio: Option, @@ -190,7 +190,7 @@ impl VariantStream { uri: attrs.remove("URI").unwrap_or_else(String::new), bandwidth: attrs.remove("BANDWIDTH").unwrap_or_else(String::new), average_bandwidth: attrs.remove("AVERAGE-BANDWIDTH"), - codecs: attrs.remove("CODECS").unwrap_or_else(String::new), + codecs: attrs.remove("CODECS"), resolution: attrs.remove("RESOLUTION"), frame_rate: attrs.remove("FRAME-RATE"), audio: attrs.remove("AUDIO"), @@ -226,7 +226,7 @@ impl VariantStream { fn write_stream_inf_common_attributes(&self, w: &mut T) -> std::io::Result<()> { write!(w, "BANDWIDTH={}", &self.bandwidth)?; write_some_attribute!(w, ",AVERAGE-BANDWIDTH", &self.average_bandwidth)?; - write!(w, ",CODECS=\"{}\"", &self.codecs)?; + write_some_attribute_quoted!(w, ",CODECS", &self.codecs)?; write_some_attribute!(w, ",RESOLUTION", &self.resolution)?; write_some_attribute!(w, ",FRAME-RATE", &self.frame_rate)?; write_some_attribute_quoted!(w, ",VIDEO", &self.video) diff --git a/tests/lib.rs b/tests/lib.rs index f6b1432..f838471 100644 --- a/tests/lib.rs +++ b/tests/lib.rs @@ -278,7 +278,7 @@ fn create_and_parse_master_playlist_full() { uri: "masterplaylist-uri".into(), bandwidth: "10010010".into(), average_bandwidth: Some("10010010".into()), - codecs: "TheCODEC".into(), + codecs: Some("TheCODEC".into()), resolution: Some("1000x3000".into()), frame_rate: Some("60".into()), audio: Some("audio".into()),