2
我試圖寫一個FUSE文件系統,將流媒體音樂呈現爲mp3文件。我不想在讀取ID3v1.1標籤時開始流式傳輸音頻,因此我使用direct_io和max_readahead = 0裝入文件系統。FUSE fseek與direct_io的意外行爲
但是,當我做到這一點(這也是libid3tag做什麼),我得到的2752個字節讀取與偏移-2880個字節的結尾:
char tmp[255];
FILE* f = fopen("foo.mp3", "r");
fseek(f, -128, SEEK_END);
fread(tmp, 1, 10, f);
這是爲什麼?我希望能得到一個調用讀取與從大小爲10的末尾完全128字節的偏移量。
讀取的字節數似乎有所不同。
與讀取更換FREAD沒什麼區別。 – 2010-12-07 14:06:04