1. A process of manufacturing cellulose acetate, the process comprising:
steaming a material selected from one or more of bagasse, kenaf, reeds and rice straw in a pressure vessel in a sub-critical state at a temperature of about 150 to 350\xb0 C. and a pressure of about 15 to 29 MPa for about 10 to 30 minutes to obtain a mixture of a solid product and a solution product, wherein the solid product comprises cellulose, wherein the solution product comprises soluble hemicelluloses and polyphenol converted from lignin separated from lignocelluloses, and wherein the sub-critical state is such that the solid product and the solution product are obtained from the material solely due to the temperature and pressure conditions of the state;
filtering the mixture to separate the solid product; and
dehydrating and acetylating the solid product in the presence of acetic anhydride and sulfuric acid to obtain cellulose acetate from the solid product.
2. The process of claim 1, wherein the steaming is performed at a temperature of about 150 to 250\xb0 C. and a pressure of about 15 to 25 MPa, respectively.
3. The process of claim 1, wherein the steaming is performed at a temperature of about 180 to 200\xb0 C. and a pressure of about 25 to 28 MPa, respectively.
4. The process of claim 1, wherein the steaming is performed for about 15 to 20 minutes.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.
1. A method for repositioning images in a video data stream, said method comprising:
storing encoded video data in a first buffer, said data including the representation of a first image at a first position in a displayed image;
determining whether repositioning of the first image to a second position in the displayed image would result in a change of bit positions of the encoded first image data, said bit positions being determined with respect to a first number of bits;
reading said video data from said first buffer;
modifying said video data to reposition said first image;
modifying said video data by generating one or more stuffing bits configured to restore said encoded first image data to said bit positions, in response to determining said repositioning would result in said change of bits positions;
coding said stuffing bits such that upon decode said stuffing bits will not materially affect said displayed image; and
storing said modified video data in a second buffer.
2. The method as recited in claim 1, wherein the video data stream is an MPEG-2 data stream, the video data stored in the first buffer comprises an intra-coded P frame, and wherein the modified video data in the second buffer is a modified version of the P frame.
3. The method as recited in claim 2, wherein the first image represented by the P frame is overlaid upon a background image in the displayed image, wherein the background image is conveyed in a separate reference frame.
4. The method as recited in claim 3, wherein said stuffing bits are coded as non-intra data, and wherein the method further comprises generating a non-intra quantization matrix in response to determining said matrix is not represented by said P frame.
5. The method as recited in claim 4, further comprising generating empty slices for slices of the modified P frame which do not include the repositioned first image data, and wherein for each slice of the modified P frame that includes the first image data, the method further comprises:
generating a new slice header with a modified vertical position code to reposition the slice to the second location, in response to determining the second position represents a change in the vertical position of the first image as compared to the first position;
generating a stuffing macroblock, wherein said stuffing macroblock is generated with a first DCT coefficient with length equal to said number of stuffing bits, and wherein upon reconstruction said coefficient is zero;
generate a new address increment of a first macroblock in order to horizontally reposition the first image to the second location;
inserting said stuffing macroblock before said first macroblock;
appending macroblocks which follow said first macroblock from said first buffer to said second buffer; and
generating a last macroblock.
6. The method as recited in claim 5, further comprising:
calculating a number of said stuffing bits to be equal to 7 minus the modular length of said address increment, said modular length being determined with respect to said number of bits, in response to determining said first macroblock is coded with a quantizer_scale_code;
calculating a number of said stuffing bits to be equal to the modular length of one minus the address increment, said modular length being determined with respect to said number of bits, in response to determining said first macroblock is not coded with a quantizer_scale_code;
adding a quantizer_scale_code to the first macroblock if the macroblock does not already include a quantizer_scale_code, wherein a value of said quantizer_scale_code is selected to be the same as that of the slice header which corresponds to the macroblock; and
setting a macroblock_type of said first macroblock equal to binary value of 000001.
7. The method as recited in claim 5, further comprising:
generating said matrix with all coefficients with a value less than 32, in response to determining a picture header of said P frame has a q_scale_type=1; and
generating all said coefficients with a value less than 16, in response to determining said picture header has a q_scale_type=0.
8. The method as recited in claim 5, wherein said stuffing macroblock is generated with macroblock_type equal to binary value 00001 and quantizer_scale_code equal to binary value 00001.
9. A device configured to reposition images in a video data stream, said device comprising:
a storage device configured to store encoded video data, said data including the representation of a first image at a first position in a displayed image; and
a repositioning mechanism configured to:
determine whether repositioning of the first image to a second position in the displayed image would result in a change of bit positions of the encoded first image data, said bit positions being determined with respect to a first number of bits;
read said video data from said first buffer;
modify said video data to reposition said first image to said second position;
modify said video data by generating one or more stuffing bits configured to restore said encoded first image data to said bit positions, in response to determining said repositioning would result in said change of bits positions;
code said stuffing bits such that upon decode said stuffing bits will not materially affect said displayed image; and
store said modified video data in a second buffer.
10. The device as recited in claim 9, wherein the video data stream is an MPEG-2 data stream and wherein the video data stored in the first buffer comprises an intra-coded P frame, and wherein the modified video data in the second buffer is a modified version of the P frame.
11. The device as recited in claim 10, wherein the first image represented by the P frame is overlaid upon a background image in the displayed image, wherein the background image is conveyed in a separate reference frame.
12. The device as recited in claim 11, wherein said repositioning mechanism is further configured to:
code said stuffing bits as non-intra data; and
generate a non-intra quantization matrix in response to determining said matrix is not represented by said P frame.
13. The device as recited in claim 12, wherein said repositioning mechanism is further configured to generate empty slices for slices of the modified P frame which do not include the repositioned first image data, and wherein for each slice of the modified P frame that includes the first image data, the mechanism is further configured to:
generate a new slice header with a modified vertical position code to reposition the slice to the second location, in response to determining the second position represents a change in the vertical position of the first image as compared to the first position;
generate a stuffing macroblock, wherein said stuffing macroblock is generated with a first DCT coefficient with length equal to said number of stuffing bits, and wherein upon reconstruction said coefficient is zero;
generate a new address increment of a first macroblock in order to horizontally reposition the first image to the second location;
insert said stuffing macroblock before said first macroblock;
append macroblocks which follow said first macroblock from said first buffer to said second buffer; and
generate a last macroblock.
14. The device as recited in claim 13, wherein said repositioning mechanism is further configured to:
calculate a number of said stuffing bits to be equal to 7 minus the modular length of said address increment, said modular length being determined with respect to said number of bits, in response to determining said first macroblock is coded with a quantizer_scale_code;
calculate a number of said stuffing bits to be equal to the modular length of one minus the address increment, said modular length being determined with respect to said number of bits, in response to determining said first macroblock is not coded with a quantizer_scale_code;
add a quantizer_scale_code to the first macroblock if the macroblock does not already include a quantizer_scale_code, wherein a value of said quantizer_scale_code is selected to be the same as that of the slice header which corresponds to the macroblock; and
set a macroblock_type of said first macroblock equal to binary value of 000001.
15. The device as recited in claim 13, wherein said repositioning mechanism is further configured to:
generate said matrix with all coefficients having a value less than 32, in response to determining a picture header of said P frame has a q_scale_type=1; and
generate all said coefficients with a value less than 16, in response to determining said picture header has a q_scale_type=0.
16. The device as recited in claim 13, wherein said mechanism is configured to generate said stuffing macroblock with macroblock_type equal to binary value 00001 and quantizer_scale_code equal to binary value 00001.
17. The device as recited in claim 13, wherein said video data stream is obtained by said device from one of the group consisting of: a television broadcast signal; the Internet; and a local storage medium.
18. A carrier medium comprising program instructions, wherein said program instructions are executable to:
store encoded video data in a first buffer, said data including the representation of a first image at a first position in a displayed image;
determine whether repositioning of the first image to a second position in the displayed image would result in a change of bit positions of the encoded first image data, said bit positions being determined with respect to a first number of bits;
read said video data from said first buffer;
modify said video data to reposition said first image to said second position;
modify said video data by generating one or more stuffing bits configured to restore said encoded first image data to said bit positions, in response to determining said repositioning would result in said change of bits positions;
code said stuffing bits such that upon decode said stuffing bits will not materially affect said displayed image; and
store said modified video data in a second buffer.
19. The carrier medium as recited in claim 18, wherein the video data stream comprises an MPEG-2 data stream, and wherein the displayed image comprises the first image overlaid upon a background, the first image being represented by an intra-coded P frame and the background image being represented by an I frame.
20. The carrier medium as recited in claim 19, wherein said program instructions are further executable to:
generate a non-intra quantization matrix in response to determining said matrix is not represented by said P frame;
generate empty slices for slices of the modified P frame which do not include the repositioned first image data; and
for each slice of the modified P frame that includes the first image data:
generate a new slice header with a modified vertical position code to reposition the slice to the second location, in response to determining the second position represents a change in the vertical position of the first image as compared to the first position;
generate a stuffing macroblock coded as non-intra data, wherein said stuffing macroblock is generated with a first DCT coefficient with length equal to said number of stuffing bits, and wherein upon reconstruction said coefficient is zero;
modify an address increment of a first macroblock in order to horizontally reposition the first image to the second location;
insert said stuffing macroblock before said first macroblock;
append macroblocks which follow said first macroblock from said first buffer to said second buffer; and
generate a last macroblock.