Open ChristopherBiscardi opened 1 year ago
I later found some debug logs and confirmed that the relevant chunks don't currently get parsed.
The latter (iXML/bwfxml) would require an xml parser to be added as far as I can tell.
symphonia_format_wav::chunks: ignoring unknown chunk: tag=bext, len=1114.
symphonia_format_wav::chunks: ignoring unknown chunk: tag=iXML, len=5226.
Hiya. I have a .wav file that came from a zoom f3 recorder with timecode and I'm not finding some data I expect to see when processing the audio.
I am unable to see the timecode in the symphonia produced metadata (I can see other metadata).
I haven't gotten too deep into investigating the metadata parsing in symphonia, but I've confirmed that there is a BWFXML section at the head of the file.
Is this something symphonia should be able to parse and display in metadata? In this case I can see the number I need in
TIMESTAMP_SAMPLES_SINCE_MIDNIGHT_LO
.ffprobe *does* find this data, with the relevant data I'm looking for in `tags.time_reference`
``` ❯ ffprobe -i /Users/chris/230308_001_Tr2.WAV -v quiet -print_format json -show_format -show_streams { "streams": [ { "index": 0, "codec_name": "pcm_f32le", "codec_long_name": "PCM 32-bit floating point little-endian", "codec_type": "audio", "codec_tag_string": "[3][0][0][0]", "codec_tag": "0x0003", "sample_fmt": "flt", "sample_rate": "48000", "channels": 1, "bits_per_sample": 32, "r_frame_rate": "0/0", "avg_frame_rate": "0/0", "time_base": "1/48000", "duration_ts": 4800000, "duration": "100.000000", "bit_rate": "1536000", "disposition": { "default": 0, "dub": 0, "original": 0, "comment": 0, "lyrics": 0, "karaoke": 0, "forced": 0, "hearing_impaired": 0, "visual_impaired": 0, "clean_effects": 0, "attached_pic": 0, "timed_thumbnails": 0, "captions": 0, "descriptions": 0, "metadata": 0, "dependent": 0, "still_image": 0 } } ], "format": { "filename": "/Users/chris/2023-03-08-timecode-recording/230308_001_Tr2.WAV", "nb_streams": 1, "nb_programs": 0, "format_name": "wav", "format_long_name": "WAV / WAVE (Waveform Audio)", "duration": "100.000000", "size": "19724288", "bit_rate": "1577943", "probe_score": 99, "tags": { "comment": "zSPEED=25.000ND\r\nzTAKE=001\r\nzUBITS=00000000\r\nzSCENE=230308\r\nzTAPE=\r\nzCIRCLED=FALSE\r\nzTRK4=Tr2\r\nzNOTE=\r\n", "encoded_by": "ZOOM F3", "date": "2023-03-08", "creation_time": "17:11:08", "time_reference": "32784000", "coding_history": "A=PCM,F=48000,W=32,M=mono,T=F3;VERSION=1.10;P=" } } } ```All I can see is the track information and empty metadata revisions
``` [src/main.rs:53] v = Track { id: 0, codec_params: CodecParameters { codec: CodecType( 284, ), sample_rate: Some( 48000, ), time_base: Some( TimeBase { numer: 1, denom: 48000, }, ), n_frames: Some( 4800000, ), start_ts: 0, sample_format: None, bits_per_sample: None, bits_per_coded_sample: None, channels: Some( FRONT_LEFT, ), channel_layout: None, delay: None, padding: None, max_frames_per_packet: Some( 1152, ), packet_data_integrity: false, verification_check: None, frames_per_block: Some( 1, ), extra_data: None, }, language: None, } [src/main.rs:94] format.metadata() = Metadata { revisions: [], } ```