GithubHelp home page GithubHelp logo

Date aka Recorded Date. about atldotnet HOT 15 CLOSED

zeugma440 avatar zeugma440 commented on May 18, 2024
Date aka Recorded Date.

from atldotnet.

Comments (15)

JeepNL avatar JeepNL commented on May 18, 2024

Oops, it seems my podcast downloader (Media Monkey) gets the recorded date from the RSS file and updates that date to the MP3/M4A 'date' field which is "Recorded Date" in MediaInfo. Format yyyy-MM-dd ie: 2019-12-17

But still, ATLdotnet doesn't read it. I'm also in the process of programming my own RSS feed podcast downloader and I would like to use that date field.

from atldotnet.

Zeugma440 avatar Zeugma440 commented on May 18, 2024

Could you please provide a tagged file so that I can use it for tests?

from atldotnet.

JeepNL avatar JeepNL commented on May 18, 2024

One moment please ...

from atldotnet.

JeepNL avatar JeepNL commented on May 18, 2024

Here's a link to drive where you can download 2 files, one MP3 and one M4A
https://drive.google.com/drive/folders/1KzQSyzjS58ZWmgDICfY8uC-6oBP8Stba

from atldotnet.

Zeugma440 avatar Zeugma440 commented on May 18, 2024

Should I assume the following dates are the ones ATL should be reading ?

“The Do Something Democrats.”.mp3 -> 2019/12/12
Episode 34- Royce White, Elite Athlete and Mental Health Advocate.m4a -> 2019/12/16

from atldotnet.

JeepNL avatar JeepNL commented on May 18, 2024

I googled about mp3 "YEAR" & "DATE" and see there's some confusion, see this link and this link. It seems "YEAR" is a timestamp field and "DATE" a string?

The string format for DATE (if it's a string) should be yyyy-MM-dd I think.

So it would be: 2019-12-16 or (for example) 2019-12-01 (December 1st 2019, with a leading zero)

from atldotnet.

JeepNL avatar JeepNL commented on May 18, 2024

But yes, those are the dates MediaMonkey updated the DATE field with. But it looks like different apps use that field differently.

from atldotnet.

JeepNL avatar JeepNL commented on May 18, 2024

Oh. one minute please ... I remembered something. I need to look it up.

from atldotnet.

JeepNL avatar JeepNL commented on May 18, 2024

For MP3 files MediaMonkey puts the date in the "TDRC" field. And that is completely okay to use.

string recordedDate = theTrack.AdditionalFields["TDRC"];

But with the M4A example it isn't there,. Not in the TDRC or any other 'Additional Field' (I checked with your code snippet.

But it shows up in MediaInfo. I don't know where it gets this value, Or how to read it with ATL. I just want to read it from the M4A file.

from atldotnet.

Zeugma440 avatar Zeugma440 commented on May 18, 2024

For MP3 files MediaMonkey puts the date in the "TDRC" field. And that is completely okay to use.

Well, yes and no. TDRC is a legit field according to the ID3v2.4 standard, that's true. The problem is in the file you've sent, MediaMonkey has written that field in an ID3v2.3 header, which renders it invalid. ID3v2.3 standard field for the date is not TDRC but a combination between TDAT (day & month) and TYER (year).

Now that I'm done with the normative explanation, I can tweak the library to accept reading TDAT even in an ID3v2.3 header. That's kinda dirty but works easily

from atldotnet.

Zeugma440 avatar Zeugma440 commented on May 18, 2024

M4A's own tagging standard uses the ©day field to store that date. However that's the first time I've seen ©day containing an entire date. I'm more used to seeing it containing a simple year.

I just checked the spec that in unclear about that. I'll make it so ©day can store either entire dates or simple years.

from atldotnet.

JeepNL avatar JeepNL commented on May 18, 2024

FYI: With ATL I already could read the by Mediamonkey added "TDRC" in the MP3. So I don't think a change to the library is needed for that.

But I recently got M4A files in my (MediaMonkey) podcast feed and I can't get the date from that (M4A) format. I can see the 'recording date' in MediaInfo and I would like to read that value.

And if I'm correct I should (when converting) put the date in "TDAT" and "TYER" for MP3 and M4A as you described earlier?

from atldotnet.

JeepNL avatar JeepNL commented on May 18, 2024

With MediaMonkey there's an option in settings to 'touch' the files directly after download. It puts a couple of setting in the tags. Two I can think of are "Genre" and "Album" which you can define as a user in MediaMonkey. And it will store the recording date (which it reads from the RSS) as well as described in my previous comment.

from atldotnet.

Zeugma440 avatar Zeugma440 commented on May 18, 2024

I've just publised version 2.15 that is able to read dates on both of the files you submitted.

If you have any other topic to discuss, please open a new issue. Thanks~

from atldotnet.

JeepNL avatar JeepNL commented on May 18, 2024

It works! I installed version 2.15 and I now can read the date with theTrack.Date This works for both MP3 and M4A files.

FYI: previously with 2.14 (and earlier versions) I could read the date in "MediaMonkey MP3" files with:

string recordedDate = "";
if (theTrack.AdditionalFields.ContainsKey("TDRC"))
{
    recordedDate = theTrack.AdditionalFields["TDRC"];
} 

but that doesn't work anymore. If other people are using this, it would be a breaking change. I don't need to use this code anymore because I now can read the date with theTrack.Date

Thank you for adding this feature!

from atldotnet.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.