Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
matroska [2013/04/18 19:04] beandog created |
matroska [2018/03/28 00:28] (current) beandog |
||
---|---|---|---|
Line 1: | Line 1: | ||
==== Matroska === | ==== Matroska === | ||
+ | |||
+ | * [[mkclean]] | ||
+ | * [[mkvmerge]] | ||
Matroska is my favorite container :D | Matroska is my favorite container :D | ||
+ | |||
+ | * [[https://trac.bunkus.org/wiki/FAQ%3AImprovingPlaybackCompatibilityWithPlayers|Options for improving playback on players that don't implement the full Matroska specification]] (from mkvtoolnix) | ||
+ | |||
+ | === archives: Making a file with chapters === | ||
+ | |||
+ | Unlike OGM, MKV can import an MPEG2 vob, if you don't want to | ||
+ | rip/re-encode. | ||
+ | |||
+ | <code>mkvmerge --chapters <file> -o movie.mkv dvd.vob</code> | ||
+ | |||
+ | === archives: Metadata in mplayer === | ||
+ | |||
+ | **Notes:** Now I *know* some of this is outdated because there have been patches sent in to MPlayer after I wrote this, that I've used. It's helpful as a point of reference though. | ||
+ | |||
+ | Metadata in mplayer | ||
+ | |||
+ | <code> | ||
+ | get_meta_album | ||
+ | Print out the 'Album' metadata of the current file. | ||
+ | |||
+ | get_meta_artist | ||
+ | Print out the 'Artist' metadata of the current file. | ||
+ | |||
+ | get_meta_comment | ||
+ | Print out the 'Comment' metadata of the current file. | ||
+ | |||
+ | get_meta_genre * | ||
+ | Print out the 'Genre' metadata of the current file. | ||
+ | |||
+ | get_meta_title | ||
+ | Print out the 'Title' metadata of the current file. | ||
+ | |||
+ | get_meta_track | ||
+ | Print out the 'Track Number' metadata of the current file. | ||
+ | |||
+ | get_meta_year | ||
+ | Print out the 'Year' metadata of the current file. | ||
+ | </code> | ||
+ | |||
+ | <code> | ||
+ | osd_show_property_text "${metadata/title}" | ||
+ | |||
+ | meta_artist: ARTIST | ||
+ | meta_comment: COMMENT | ||
+ | meta_genre: GENRE | ||
+ | meta_track: PART_NUMBER | ||
+ | meta_year: DATE_RELEASE | ||
+ | </code> | ||
+ | |||
+ | libavformat/matroskadec.c | ||
+ | (1156) | ||
+ | <code c> | ||
+ | av_metadata_set(&s->metadata, "title", matroska->title); | ||
+ | </code> | ||
+ | |||
+ | av_metadata_set is in metadata.c | ||
+ | |||
+ | |||
+ | libmpdemux/demux_lavf.c | ||
+ | <code c> | ||
+ | if(avfc->title [0]) demux_info_add(demuxer, "title" , avfc->title ); | ||
+ | if(avfc->author [0]) demux_info_add(demuxer, "author" , avfc->author ); | ||
+ | if(avfc->copyright[0]) demux_info_add(demuxer, "copyright", avfc->copyright); | ||
+ | if(avfc->comment [0]) demux_info_add(demuxer, "comments" , avfc->comment ); | ||
+ | if(avfc->album [0]) demux_info_add(demuxer, "album" , avfc->album ); | ||
+ | // if(avfc->year ) demux_info_add(demuxer, "year" , avfc->year ); | ||
+ | // if(avfc->track ) demux_info_add(demuxer, "track" , avfc->track ); | ||
+ | if(avfc->genre [0]) demux_info_add(demuxer, "genre" , avfc->genre ); | ||
+ | </code> | ||
+ | |||
+ | libavformat/metadata_compat.c | ||
+ | |||
+ | <code c> | ||
+ | compat_tab[] = { | ||
+ | { "title", SIZE_OFFSET(title) }, | ||
+ | { "author", SIZE_OFFSET(author) }, | ||
+ | { "copyright", SIZE_OFFSET(copyright) }, | ||
+ | { "comment", SIZE_OFFSET(comment) }, | ||
+ | { "album", SIZE_OFFSET(album) }, | ||
+ | { "year", SIZE_OFFSET(year) }, | ||
+ | { "track", SIZE_OFFSET(track) }, | ||
+ | { "genre", SIZE_OFFSET(genre) }, | ||
+ | |||
+ | { "artist", SIZE_OFFSET(author) }, | ||
+ | { "creator", SIZE_OFFSET(author) }, | ||
+ | { "written_by", SIZE_OFFSET(author) }, | ||
+ | { "lead_performer", SIZE_OFFSET(author) }, | ||
+ | { "description", SIZE_OFFSET(comment) }, | ||
+ | { "albumtitle", SIZE_OFFSET(album) }, | ||
+ | { "date_written", SIZE_OFFSET(year) }, | ||
+ | { "date_released", SIZE_OFFSET(year) }, | ||
+ | { "tracknumber", SIZE_OFFSET(track) }, | ||
+ | { "part_number", SIZE_OFFSET(track) }, | ||
+ | }; | ||
+ | </code> | ||
+ | |||
+ | Looks like these are the only ones actually supported: | ||
+ | |||
+ | <code c> | ||
+ | FILL_METADATA_STR(ctx, title); | ||
+ | FILL_METADATA_STR(ctx, author); | ||
+ | FILL_METADATA_STR(ctx, copyright); | ||
+ | FILL_METADATA_STR(ctx, comment); | ||
+ | FILL_METADATA_STR(ctx, album); | ||
+ | FILL_METADATA_INT(ctx, year); | ||
+ | FILL_METADATA_INT(ctx, track); | ||
+ | FILL_METADATA_STR(ctx, genre); | ||
+ | </code> |