summaryrefslogtreecommitdiff
path: root/apps/plugins/mpegplayer/header.c
diff options
context:
space:
mode:
authorMichael Sevakis <jethead71@rockbox.org>2007-12-29 19:46:35 +0000
committerMichael Sevakis <jethead71@rockbox.org>2007-12-29 19:46:35 +0000
commita222f27c4a17ed8f9809cda7861fe5f23d4cc0c1 (patch)
treed393a23d83549f99772bb156e59ffb88725148b6 /apps/plugins/mpegplayer/header.c
parent1d0f6b90ff43776e55b4b9f062c9bea3f99aa768 (diff)
downloadrockbox-a222f27c4a17ed8f9809cda7861fe5f23d4cc0c1.tar.gz
rockbox-a222f27c4a17ed8f9809cda7861fe5f23d4cc0c1.zip
mpegplayer: Make playback engine fully seekable and frame-accurate and split into logical parts. Be sure to have all current features work. Actual UI for seeking will be added soon. Recommended GOP size is about 15-30 frames depending on target or seeking can be slow with really long GOPs (nature of MPEG video). More refined encoding recommendations for a particular player should be posted soon.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15977 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/plugins/mpegplayer/header.c')
-rw-r--r--apps/plugins/mpegplayer/header.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/apps/plugins/mpegplayer/header.c b/apps/plugins/mpegplayer/header.c
index 52a301f8d8..9e6e6de03d 100644
--- a/apps/plugins/mpegplayer/header.c
+++ b/apps/plugins/mpegplayer/header.c
@@ -92,12 +92,12 @@ void mpeg2_header_state_init (mpeg2dec_t * mpeg2dec)
92{ 92{
93 if (mpeg2dec->sequence.width != (unsigned)-1) 93 if (mpeg2dec->sequence.width != (unsigned)-1)
94 { 94 {
95 int i;
96
97 mpeg2dec->sequence.width = (unsigned)-1; 95 mpeg2dec->sequence.width = (unsigned)-1;
98 96 mpeg2_mem_reset(); /* Clean the memory slate */
97#if 0
99 if (!mpeg2dec->custom_fbuf) 98 if (!mpeg2dec->custom_fbuf)
100 { 99 {
100 int i;
101 for (i = mpeg2dec->alloc_index_user; 101 for (i = mpeg2dec->alloc_index_user;
102 i < mpeg2dec->alloc_index; i++) 102 i < mpeg2dec->alloc_index; i++)
103 { 103 {
@@ -109,6 +109,7 @@ void mpeg2_header_state_init (mpeg2dec_t * mpeg2dec)
109 109
110 if (mpeg2dec->convert_start) 110 if (mpeg2dec->convert_start)
111 { 111 {
112 int i;
112 for (i = 0; i < 3; i++) 113 for (i = 0; i < 3; i++)
113 { 114 {
114 mpeg2_free(mpeg2dec->yuv_buf[i][0]); 115 mpeg2_free(mpeg2dec->yuv_buf[i][0]);
@@ -121,6 +122,7 @@ void mpeg2_header_state_init (mpeg2dec_t * mpeg2dec)
121 { 122 {
122 mpeg2_free(mpeg2dec->decoder.convert_id); 123 mpeg2_free(mpeg2dec->decoder.convert_id);
123 } 124 }
125#endif
124 } 126 }
125 127
126 mpeg2dec->decoder.coding_type = I_TYPE; 128 mpeg2dec->decoder.coding_type = I_TYPE;