Polyvox.ID3.TagWriter

Provides a way to write tags around a given stream.

You should get a reference to a tag writer through the Polyvox.ID3.get_writer method.

Summary

Functions

Sets the embedded artwork for the episode

Closes the writer and stops the process

Sets the date or the recording (in expected DDMM) format for the episode

Sets the description of the episode

Sets the list of genres for the episode

Sets the value of the episode number

Sets the list of people that participated in the episode

Sets the value of the podcast name

Sets the URL for the podcast

A generic method for setting the value of the supplied atom for the writer

Sets the show notes for the episode

Gets a stream that will write the tags around the originally supplied stream. By default, the writer will write both version 1 and 2.3 tags

Sets the content of the episode summary

Sets the value of the episode title

Sets the unique identifier for the episode

Sets the URL where someone can find this episode

Sets the year of the podcast recording

Functions

artwork(pid, )

Specs

artwork(pid, Stream.t) :: pid

Sets the embedded artwork for the episode.

Note: This is not yet implemented because it’s not MVP.

close(pid)

Specs

close(pid) :: :ok

Closes the writer and stops the process.

Use Polyvox.ID3.get_writer/1 to get a tag reader.

date(pid, value)

Specs

date(pid, binary) :: pid

Sets the date or the recording (in expected DDMM) format for the episode.

description(pid, value)

Specs

description(pid, binary) :: pid

Sets the description of the episode.

genres(pid, value)

Specs

genres(pid, [integer]) :: pid

Sets the list of genres for the episode.

number(pid, value)

Specs

number(pid, integer) :: pid

Sets the value of the episode number.

participants(pid, value)

Specs

participants(pid, [binary]) :: pid

Sets the list of people that participated in the episode.

podcast(pid, value)

Specs

podcast(pid, binary) :: pid

Sets the value of the podcast name.

podcast_url(pid, value)

Specs

podcast_url(pid, binary) :: pid

Sets the URL for the podcast.

set(pid, atom, value)

Specs

set(pid, atom, binary) :: pid

A generic method for setting the value of the supplied atom for the writer.

Supported atoms for this method are as follows:

  • :artwork
  • :date
  • :description
  • :genres
  • :number
  • :participants
  • :podcast
  • :podcast_url
  • :show_notes
  • :summary
  • :title
  • :uid
  • :url
  • :year

For expected values associated with each of those atoms, see the corresponding method with the same name.

show_notes(pid, value)

Specs

show_notes(pid, binary) :: pid

Sets the show notes for the episode.

stream(pid, opts \\ [v1: true, v2_3: true])

Specs

stream(pid, Keyword.t) :: pid

Gets a stream that will write the tags around the originally supplied stream. By default, the writer will write both version 1 and 2.3 tags.

By setting v1: true, the writer will write version 1 tags. By setting v2_3: true, the writer will write version 2 tags.

summary(pid, value)

Specs

summary(pid, binary) :: pid

Sets the content of the episode summary.

title(pid, value)

Specs

title(pid, binary) :: pid

Sets the value of the episode title.

uid(pid, value)

Specs

uid(pid, binary) :: pid

Sets the unique identifier for the episode.

url(pid, value)

Specs

url(pid, binary) :: pid

Sets the URL where someone can find this episode.

year(pid, value)

Specs

year(pid, integer) :: pid

Sets the year of the podcast recording.