严格目录结构
约定目录结构结构较为松散,对分发而言较为方便。但这也给 Annil
的有效利用,以及整理完成后的同步带来了一定难度。由此,Anni
提出了一种较为严格,便于结构化处理的目录格式。
描述
专辑单元
每张专辑均以 album_id
命名,并且在专辑目录中须存在 cover.jpg
表示该专辑的封面。
专辑中的各张碟片均以 disc_id
命名目录,且不允许携带前缀 0
。碟片目录中须存在 cover.jpg
表示该碟片的封面。
碟片中的各音轨以 {track_id}.{ext}
命名,ext
表示音频的扩展名。track_id
同样不允许携带前缀 0
。
Hash 分散
为了减少单一目录下子目录的数量,严格目录结构允许在 album_id
的基础上通过多级子目录对目录进行分散。子目录嵌套层数由参数 layer
控制,取值区间为 0-4
,默认为 2
。
每一级目录名均取 album_id
字符串的两位(一个字节),且不携带前缀 0
。
以默认情况下的 5a0c666f-fe66-4c01-8cde-a3b45118f25f
为例,其第一级目录名为 5a
,第二级为 c
。
目录结构示例
.
├── 5a
│ └── c
│ └── 5a0c666f-fe66-4c01-8cde-a3b45118f25f
│ ├── 1
│ │ ├── 1.flac
│ │ ├── 2.flac
│ │ ├── 3.flac
│ │ └── cover.jpg
│ └── cover.jpg
└── 67
└── 53
└── 675377ef-62e0-4192-a465-c1d025871ec0
├── 1
│ ├── 1.flac
│ ├── 2.flac
│ ├── 3.flac
│ └── cover.jpg
└── cover.jpg