# Using digital media masters Digitally stored media master files are often relatively large, and are more likely used as-is than edited. We use git-annex to track such files. As an addon to git, some of the interaction is done through git commands, while some is done using git-annex-specific commands. ## Status To check status of metadata, use git: ```shell git status ``` To check status of file content storage, use git-annex: ```shell git annex info ``` ## Save To "take a snapshot" of one of more files for git-annex archival, first mark which files are involved and then archive their (changes to) content: ```shell git annex add foo bar git annex add baz git commit -m "Update foo bar, and add baz." ``` (final `git commit` is implied by [`git annex sync` or `git annex move`](#sync)) ## Sync To align a git-annex repository with subscribed annex(es), request a syncronization: ```shell git annex sync --content --all ``` Alternatively (e.g. on slow/expensive network), syncronize only metadata and only with nearest clones: ```shell git annex sync ``` Alternatively (e.g. on small host), push the content to only be remote without keeping a local copy: ```shell git annex move . ``` ## Access While main purpose of git-annex is to store large media elsewhere, you obviously want to sometime work with the content locally. To fetch content of current folder and all subfolders: ```shell git annex get . ``` To afterwards relieve local storage of git-annex tracked content in current folder and all subfolders: ```shell git annex move . ``` To fetch or relieve a single file or another directory, replace the dot with the path to the file or directory. ## Split Splitting media files is format-specific. Many audio formats can be split with the package shntool and appropriate helper tools, e.g. like this for a FLAC file with CUE file for splicing hints: ```shell shnsplit -o flac -f CUE_FILE.cue FLAC_FILE.flac ``` For many other formats, including video content, splitting can be done using the [copy] parameter to FFMpeg, e.g. like this: ```shell ffmpeg -i INFILE -ss 15 -t 60 -acodec copy -vcodec copy OUTFILE ``` [copy]: https://ffmpeg.org/ffmpeg.html#Stream-copy "FFMpeg copy parameter" ## References * [Source of this document][media-master] [media-master]: https://source.redpill.dk/media-master "Digital media master material"