严格目录结构
约定目录结构结构较为松散,对分发而言较为方便。但这也给 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