--- lsdvd-0.16.orig/lsdvd.c +++ lsdvd-0.16/lsdvd.c @@ -442,6 +442,10 @@ { dvd_info.titles[j].cells[i].length = dvdtime2msec(&pgc->cell_playback[i].playback_time)/1000.0; converttime(&dvd_info.titles[j].cells[i].playback_time, &pgc->cell_playback[i].playback_time); + /* added to get the start/end sectors */ + dvd_info.titles[j].cells[i].first_sector = pgc->cell_playback[i].first_sector; + dvd_info.titles[j].cells[i].last_sector = pgc->cell_playback[i].last_sector; + } } else { dvd_info.titles[j].cells = NULL; --- lsdvd-0.16.orig/ocode.c +++ lsdvd-0.16/ocode.c @@ -242,6 +240,9 @@ HASH(0); DEF("ix", "%d", i+1); DEF("length", "%.3f", dvd_info->titles[j].cells[i].length); + /* added to get the size information */ + DEF("first_sector", "%d", dvd_info->titles[j].cells[i].first_sector); + DEF("last_sector", "%d", dvd_info->titles[j].cells[i].last_sector); RETURN; } RETURN; --- lsdvd-0.16.orig/lsdvd.h +++ lsdvd-0.16/lsdvd.h @@ -61,6 +61,8 @@ struct { float length; playback_time_t playback_time; + int first_sector; + int last_sector; } *cells; int subtitle_count; struct {