The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Поиск:  Каталог документации | mpeg-faq

MPEG-FAQ: multimedia compression [6/9]

This is the summary about the ISO video and audioformats MPEG 1, 2 and 4
Archive-name: mpeg-faq/part6
Last-modified: 1996/06/02
Version: v 4.1 96/06/02
Posting-Frequency: bimonthly

MPEGVIEW.EXE and type "MPEG MPEGFILENAME.MPG".

---------------------------------------------------------------------------

~Subject: mpgaudio

Now there is the MPEG AUdio Player for Win3.1 !

This program is Shareware. To encode your own MPEG Audio files, you need
to buy the MPEG Audio Software Encoder program for Win3.1 .

[ Look above. Get some freeware encoder in software, much better !]

---------------------------------------------------------------------------

~Subject: SUBSECTION - WINDOWS-NT

---------------------------------------------------------------------------

~Subject: mpeg2ply

[The June 30 edition of mpeg2w11 does not contain encoder port]

                    MPEG Software Simulation Group codecs
                             for Windows 32s 
                           (MPEG-L@netcom.com)

MPEG2DEC.EXE and MPEG2ENC.EXE are Windows 32s ports with integrated
display functions of the MPEG Software Simulation Group's programs. 

MPEG2PLY.EXE is the port of mpeg2play---Stefan Eckart's variation of
mpeg2decode which optimizes speed through fast decoding methods such as
approximation techniques, loop unravelling, et al.

All Win32s programs were ported with Microsoft Visual C++.  Only the
main() program and display files (mpeg2dec.c, mpeg2enc.c, or mpeg2ply.c) 
differ from the standard "Unix distribution."

If you do not have a 32-bit Windows environment (e.g. Win 4.0 Chicago,
Windows NT), but plain old Windows 16 (e.g. Windows 3.1), yet you do
possess either a 386, 486, or Pentium-based PC, you can download the
Microsoft 32-bit extension program, "Win32s" from the Microsoft FTP
site:

URL=ftp://ftp.microsoft.com/developers/DEVTOOLS/Win32SDK/Win32s115a.zip
    [198.105.231.1]

(this is the latest edition--June 23, 1994)

Win32s archive (mpeg2w11.zip):      

 mpeg2dec:   
   mpeg2dec.c             Main() routine.  Initiates application and display.
   mpeg2dec.r             MS Visual C++ resource file.
   makefile               MS Visual C++ project file.
   gui.h                  #include constants for MS GUI values.
   mpeg2dec.exe           Speed-optimized executable
   grayleo.ico            mpeg2dec.exe 32x32 4-bit System Palette icon


About the windows icon:
The 32x32 4-bit icon for MPEG2DEC.EXE and MPEG2ENC.EXE is a silhouette
of Dr. Leonardo Chiariglione (CSELT, Italy), none other than our
co-founder and exhaulted lifetime Convenor of MPEG.

Acknowledgement:
Many thanks to Sorin Papuc (sop@compcore.com) for porting these programs
to Windows 32s.

---------------------------------------------------------------------------

~Subject: mpegplay

[ This new version of it, is running now extremly nice, the subsystem ]
[ is no harm at all. The file should be known as MPEGW32W.ZIP.        ]

From: michael@ecel.uwa.edu.au (Michael Simmons  - division)

MPEGPLAY V1.61 (c) 1993,1994 Michael Simmons

Please READ ALL of this file!

This is Release Version 1.61 of my port of the Berkeley mpeg player.

Note this version requires the WIN32s V1.15a Windows(tm) Extender.
Also this version will only work under (beta 612) of Windows NT(tm) V3.5 or later.

Features added in this version include
(1) Support for MPEG1 System Layer files (you don't have to split them now).
(2) Support for the Microsoft(tm) WinG(tm) Windows(tm) gaming library.
(3) Improved colours for the Ordered and 2x2 Order dithers.
(4) "Save As" For all the Mosaic Users.
(5) Improved Error handling for corrupt/non standard mpeg files.
(6) Support for CDI(tm) and VideoCD Streams. Either as an extracted MPEG
    sequence or as a RAW CDROM grab.
(7) Recompiled using the Microsoft Daytona(tm?) (beta 612) SDK Compiler.

Please Email me with any suggestions you may have on improving the player!
(See the section CONTACTING ME).

This player can play standard mpeg files that include P and B frame
encoding, and large 354x288 movie files. 
It has several display options including mono, gray scale, color dither and
Full colour (for Hicolor graphic cards).
8MB of Ram or greater is recommended if large Image size MPEG files 
are played.

This program is SHAREWARE Please read the REGISTER.TXT file for 
information on registering your copy. 

To install the player.  
If you don't have Win32s V1.15a installed, install it first.
Unzip the file disk1.zip to a floppy disk. 
Then run the setup.exe file via the Progman File-Run Menu
Item. 
Note: This will also install the Microsoft WinG(tm) extensions to Windows(tm)
Should you wish to remove these extensions at a later date
please refer to the section near the end of this Readme.txt file.

Read the Disclaimer in the online Help before loading any mpeg movie files.

The latest version of this software can be found first on

URL=ftp://ftp.ecel.uwa.edu.au/users/michael/

UNREGISTERED VERSION LIMITATIONS:
The unregistered version will display the About box at startup. 
IT WILL ALSO NOT HANDLE FILES BIGGER THAN 1MB!

DISTRIBUTION:

The Unregistered Version of the Player may be freely Re-Distributed so long as
(1) None of the files are modified.
(2) All files in this archive are re-distributed together.
(3) None of the files are removed from this archive.
(4) It is clearly stated that this program is Shareware, extended use of
    which requires payment to myself Michael Simmons as described in the
    players about box and the REGISTER.TXT file.
(5) If any additional files are added it must be clearly stated 
    which files have been added, who added these files and why!. 
    It must be stated that I "Michael Simmons" am in no way responsible 
    for these additional files.
(6) None of the added files can instruct the user or modify the player 
    in any way possible to enable the Unregistered Version Limitations 
    to be overcome.

The Registered Version may only be Re-Distributed with my written
approval.

KNOWN BUGS:
The player does not like certain PD/Shareware desktop addons (Clocks etc).
A small number of people are getting a GPF in POINTER.DLL. If you have
this problem and solve it please contact me. So far I can not reproduce
the fault.
The player does not multitask while scanning a file to determine whether
or not it is a system layer or straight video file. This is only a problem
on large misaligned RAW CDI or VideoCD grabs.
RAW CDI or VideoCD grabs have only be tested on 4 CDI Disks. Given the
variation found between these disks I would not be surprised if there
are problems with some disks.
If you are having a problem with a certain CDI/VideoCD disk please send a
copy (both original CD's) of it to me. If I don't already have it I will treat
it as a registration fee.
If you have a problem and are really stuck 
try and find a machine on which it works and compare the two configurations.
If you really really get stuck then see the section CONTACTING ME.

CHANGE LOG: (there is more to read after this section)

Changes V1.0 -> V1.2
(1) Re complied using the latest (March) WIN32 Beta.
(2) Includes the latest (March) Win32s windows 3.1 extension.
(3) Fix bug in finding help file. The working directory can now be different
    to the Command Line directory.
(4) Increase number of clicks at startup to 4 

Changes V1.2 -> 1.25
(1) Major rewrite of source code to clean up bugs
(2) Now saves options in a .ini file
(3) Can split a multi stream MPEG into separate files.
(4) Loop is now a separate option
(5) Can be set to skip over B and P frames ( best to stop and rewind player 1st)
(6) Decrease the number of About Box clicks to one
(7) Can started via the file manager (associate .mpg with the player)
(7b) Also startable from other applications i.e. NCSA Mosaic.
(8) Recompiled with the release version of the Visual C++ for NT compiler
(9) includes the Win32s version 1.1 files
(10) Can change InputBufferSize in .ini file (i.e. InputBufferSize=80000)
(11) Don't have to Close MPEG before OPEN ing
(12) MPEG images are properly clipped when they are displayed
(13) Hopefully no one will have any display problems now (try Use Small DIBS)

Changes V1.25 -> V1.30
(1) Increased speed 10-20% (mainly P B frames and gray, Full/Hi Color dither).
(2) Fixed bug, old mpegs causing exceptions (bus.mpg,flower.mpg,flowb.mpg etc).
(3) Decreased the memory usage.
(4) Added HiColor Dither (Uses 16 Bit DIBS,These are not supported by many
    drivers yet, NT emulates support in the GDI).
(5) Dropped Fs2 and Fs4 dither (use Fs2Fast)

Changes V1.30 -> V1.50
(1) Added Push button, VCR like controls.
(2) Now has a Separate Video Window.
(3) Automatically Displays the 1st frame of the MPEG.
(4) Redraws the current frame when needed.
(5) Displays MPEG File Name, Image Dimensions and File Size in Video Caption
(6) Saves all window positions correctly when exiting.
(7) Detects when saved windows position is off the screen.
(8) Added Experimental Set+Blt Mode for transferring images to the screen.

Changes V1.50 -> V1.60
(1) Support for MPEG1 System Layer files (you don't have to split them now).
(2) Support for the Microsoft(tm) WinG(tm) Windows(tm) gaming library.
(3) Improve colors for the Ordered and 2x2 Order dithers.
(4) "Save As" For all the Mosaic Users.
(5) Improve Error handling for corrupt/non standard mpeg files.
(6) Support for CDI(tm) and VideoCD Streams. Either as an extracted MPEG
    sequence or as a RAW CDROM grab.
(7) Recompiled using the Daytona (beta 612) SDK Compiler.

ACKNOWLEDGMENTS:

This code was derived from the U.C. Berkeley MPEG Player (version 2.0)
developed by L.A. Rowe, K. Patel, and B. Smith (Rowe@CS.Berkeley.EDU).
Permission to use their code in this Sharware product was obtained.
THAT code included the following copyright:

/*
 * Copyright (c) 1992 The Regents of the University of California.
 * All rights reserved.
 * 
 * Permission to use, copy, modify, and distribute this software and its
 * documentation for any purpose, without fee, and without written agreement is
 * hereby granted, provided that the above copyright notice and the following
 * two paragraphs appear in all copies of this software.
 * 
 * IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY FOR
 * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT
 * OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE UNIVERSITY OF
 * CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 * 
 * THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES,
 * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANT ABILITY
 * AND FITNESS FOR A PARTICULAR PURPOSE.  THE SOFTWARE PROVIDED HEREUNDER IS
 * ON AN "AS IS" BASIS, AND THE UNIVERSITY OF CALIFORNIA HAS NO OBLIGATION TO
 * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
 */
/*

OTHER ACKNOWLEDGMENTS:
Frank Gadegast (the MPEG FAQ Maintainer) for his helpful suggestions.
Many others for their suggestions and support.

PATENTS:
Should this player infringe on a patent held by someone somewhere.
Please contact me as soon as possible. See the section CONTACTING ME

CONTACTING ME:
In any correspondence please clearly state your email and snail mail addresses!

I have been receiving a large number of emails. 
In-order to handle these efficiently I would ask that you note the following:
(1) If possible look on

URL=ftp://ftp.ecel.uwa.edu.au/users/michael/faq.txt

(2) Mark all emails that do not require a reply "No Reply Expected". I will READ THESE!
(3) Bounced replies due to incorrect email addresses (unless obvious) will not 
    be chased up!

Email to michael@ecel.uwa.edu.au
Talk to michael@div-pc-michael.ecel.uwa.edu.au  (8:30am to 5:00pm WA time).
Phone to (Int)+ 61 9 344 1998 (Home number with answering machine)
Don't automatically expect me to ring outside of Western Australia.
I can be contacted via snail mail to PO Box 506,NEDLANDS WA 6009,AUSTRALIA

NOTE None of the source code to this player is on any of the machines
     connected to the net via the University of Western Australia.
IF   someone on network news is flaming me or my port of the player. Please
     Email me about it.

OTHER INFO:
There is another mpeg player for windows available for free from

URL=ftp://ftp.netcom.com/pub/cfogg/mpeg2/mpeg2w11.zip

I have nothing to do with this player. None of the source for that player
is related to mine.

All of the money from registration is being spent on tools and 
hardware to improve the player and further my knowledge of MPEG and 
programming.
This player is written and maintained in my free time. It is in no-way
related to the University of Western Australia.
They have indicated they have no interest in the player or its copyright.

The Source to this player is NOT Available!

HOW TO REMOVE THE WIN32s EXTENSIONS to WINDOWS(tm)

(1) exit to DOS.
(2) backup your hard disk.
(3) delete the Win32s directory and all its files.
(4) edit the system.ini file in the window directory.
    and remove the line device=C:\WINDOWS\SYSTEM\WIN32S\W32S.386
(5) return to windows
(6) remove the Win32 Applications Progman group

HOW TO REMOVE THE WING EXTENSIONS TO WINDOWS(tm)

(1) exit to DOS.
(2) backup your hard disk.
(3) delete the following files from you c:\windows\system directory
    dva.386
    wing.dll
    wing32.dll
    wingde.dll
    wingdib.drv
    wingpal.wnd
(4) edit the system.ini file in the window directory.
    and remove the line device=C:\WINDOWS\SYSTEM\dva.386
(5) return to windows

Windows NT, Win32s, Windows 3.1, WinG are trademarks of the Microsoft Corporation.
CDI is a trademark of Phillips.

---------------------------------------------------------------------------

~Subject: SUBSECTION - OS/2

---------------------------------------------------------------------------

~Subject: mp

mp.lha               gfx/show    45K  83 MPEG player for EHB display.

---------------------------------------------------------------------------

~Subject: SUBSECTION - X-WINDOWS and UNIX

---------------------------------------------------------------------------

~Subject: FHG Layer 3

ISO-MPEG Audio Layer 3 software only Encoder and Decoder for Unix
Version 2.00.

copyright Fraunhofer - IIS 1994, 1995

- evaluate highest quality perceptual audio compression technique
  available today
- software only encoder and decoder implementations
- implements ISO/MPEG Audio standard ISO/IEC IS 11172-3, Layer 3
- wide range of compression ratios including
      6:1   fully transparent quality 
     11:1   64 kbps per channel, very high quality
     16:1   still better than your average 16 bit 44.1 kHz sound card 
- music data is input in raw format (16 bit signed integer), in
  RIFF/WAVE format as used by Microsoft Windows .WAV files, in 
  AIFF/AIFC format as used by SGI and Mac or in .snd/.au format used
  by NeXT and Sun.
- 44.1kHz sampling frequency (32 kHz and 48 kHz also for registered users)
- packed bit stream conforming to ISO/MPEG Layer III
- output of decoder is in raw format (16 bit signed integer), 
  in .snd/.au format, in AIFF/AIFC format or in RIFF/WAVE format
- .WAV music files can be played with Windows Media Player
- Under rare circumstances the .WAV output is broken. Please use raw format
  in that cases.
- optional decoder output as 24 bit hex ascii data
- written by the very same people at Fraunhofer-IIS who did the 
  Layer III codecs for the ISO and ITU-R (former CCIR) tests 
  (best sound quality at low bit rates at all listening tests)
- commercial real time products for encoding and/or decoding of 
  Layer III are available. Contact one of the companies listed 
  in the file info.txt

The package consists of the following files
   
l3v200.UNIX_NAME.tar.gz:
   l3enc          encoder program V2.00
   l3dec          decoder program V2.10
   manual.txt     instructions for encoder and decoder programs
   register.txt   information on registration. PLEASE READ THIS!
   info.txt       infos on ISO MPEG Layer III and Layer III products
   readme.txt     this file
   history.txt    infos on the history of this shareware product
   go32.exe       DOS extender
   winplay3/      in this directory is a demo version of the realtime
                  Windows player WinPlay3 


mp3-bitstreams.tar.gz:
   contents.txt    short discription of the following Layer 3 bitstreams
                   (CR/LF format)
   contents        short discription of the following Layer 3 bitstreams
                   (LF format)
   funky.mp3       demo layer 3 bitstream (96 kbit/s, stereo, 44.1 kHz)
   spot1.mp3       demo layer 3 bitstream (96 kbit/s, stereo, 44.1 kHz)
   spot2.mp3       demo layer 3 bitstream (96 kbit/s, stereo, 44.1 kHz)
   spot3.mp3       demo layer 3 bitstream (96 kbit/s, stereo, 44.1 kHz)
   classic1.mp3    demo layer 3 bitstream (56 kbit/s, stereo, 22.05 kHz)
   classic2.mp3    demo layer 3 bitstream (48 kbit/s, stereo, 22.05 kHz)

The song used for funky.mp3 is named "Funky" and was composed and 
arranged by Juergen Herre. "Funky" is copyright Juergen Herre 1994.
You may use "Funky" for all evaluation purposes of this shareware product.
You may not use "Funky" for commercial purposes (e.g. radio broadcasting).
The other bitstreams were provided by OMNI-Mediasound.

This package is distributed as shareware. You may work with the package for
30 days for evaluation purposes. If you want to use this package after the
evaluation period, you are required to register the package (see information
in the file register.txt). You may give copies of this package to other 
people as long as no file is changed and no file is omitted.

If you need further information on Layer 3 products or if you have
any questions concerning this shareware product, please send email to
layer3@iis.fhg.de or try http://www.iis.fhg.de/. 

You can also fax or mail your questions to

   Layer 3 support
   Fraunhofer - IIS
   Am Weichselgarten 3
   D-91058 Erlangen
   Germany

Fax: + 49 9131 / 776 399

Disclaimer:

Don't forget that there are no warranties associated with this software.
While we believe that our software is reasonably bug free and well behaved,
we are in no way responsible if our software does not work the way you
would expect it to work. No matter if it locks up your computer, garbles
your floppy disks or does any other harmful things to your computer - it
is entirely your problem. 
Fraunhofer - IIS is not liable for any infringments or damages of 
third parties' rights in consequencs of your use of this shareware 
product. Fraunhofer - IIS is in no event liable for, respectively does 
not warrant the trustworthiness, quality, industrial exploitability, 
serviceability of this shareware product for the supposed purpose 
or any other purposes.


All brand names are registered trade marks of their respective owners.

---------------------------------------------------------------------------

~Subject: Berkeley's MPEG Tools

[ These tools were still in Beta-Version when the FAQ was compiled ]
[ Try ftp to

URL=ftp://mm-ftp.cs.berkeley.edu/pub/multimedia/mpeg/

[ find the next 4 tools.                                           ]

This version of the Berkeley MPEG Tools packages together the decoder 
(mpeg_play), the encoder (mpeg_encode), and three analysis tools (mpeg_stat,
mpeg_blocks, and mpeg_bits).  Our last estimate was that over 60,000 copies 
of the decoder have been FTP'd since the first release in November 1991,
and over 15,000 copies of the encoder have been FTP'd since it was released 
in July 1993.

For other information on multimedia research at U.C. Berkeley, see the home
page for the Plateau Multimedia Research Group.
	http://www-plateau.cs.berkeley.edu/plateau.html

Further about the FTP site is included in INDEX.  See ANNOUNCE for our
posted announcement of the tools.

(Last updated: May 5, 1995)

-- 
Eugene Hung                             eyhung@garnet.berkeley.edu
Peter's Theorem:
  Incompetence plus incompetence equals incompetence.

---------------------------------------------------------------------------

~Subject: MPEG-1 Video Software Encoder

                 MPEG-1 Video Software Encoder
                (Version 1.5; May 8, 1995)

     Lawrence A. Rowe, Kevin Gong, Eugene Hung, Ketan Patel, Steve Smoot
       and Dan Wallach
    Computer Science Division-EECS, Univ. of Calif. at Berkeley

This directory contains the freely distributed Berkeley MPEG-1 Video 
Encoder.  The encoder implements the standard described in the ISO/IEC
International Standard 11172-2.  The code has been compiled and tested 
on the following platforms:

 DECstation 5000 and Alpha
 HP PA-RISC (HP/UX 9.X) (i.e., HP 9000/7XX and 9000/3XX)
 SGI Indigo running IRIX 5.0.1
 Sun Sparc (SunOS 4.X)

In addition, Rainer Menes from the Technical University of Munich has
ported the encoder and decoder to the Macintosh.  You can get that code
directly from him (menes@statistik.tu-muenchen.de), or from the 
Berkeley FTP archive (mm-ftp.CS.Berkeley.EDU).  If you decide to port 
the code to a new architecture, please let us know so that we can 
incorporate the changes into our sources.

This directory contains everything required to build the encoder
and run it.  We have included source code, makefiles, binaries
for selected platforms, documentation, and test data.  Installation 
instructions are given in the file named src/mpeg_encode/INSTALL.  A man 
page is given in the file doc/mpeg_encode.1.  A detailed user 
manual is provided in postscript format in the file doc/user-manual.ps.

The encoder will accept any input file format as long as you provide 
a script to convert the images to PPM, YUV, JPEG, or JMOVIE format.  Input 
file processing is described in the file doc/INPUT.FORMAT.  Options to 
control input file processing and compression parameters are specified in 
a parameter file.  Very little error processing is done when reading 
this file.  We suggest you start with the sample parameter file 
examples/template.param and modify it.  See also examples/default.param.

The convert directory of Mpeg-Tools contains utilities you might find 
useful including: 

programs to do PPM/YUV conversion and programs to convert Parallax
XVideo JPEG files into PPM, YUV, or JPEG frames.

The motion vector search window can be specified, including half-pixel
block matching, in the parameter file.  We have implemented several 
search algorithms for P-frames including: 1) exhaustive search, 
2) subsampled search, and 3) logarithmic search.  We have also implemented
several alternatives for B-frame block matching including: 1) interpolate
best forward and best backward block, 2) find backward block for best
forward or vice-versa (called CROSS2), and 3) exhaustive cross product
(i.e., go out for coffee and a donut!). The search algorithms are controlled
by options in the parameters file.  For tips on choosing the right search
technique, see the user manual.

The encoder can be run on one computer (i.e., sequential) or on several
computers (i.e., parallel).  Our goal is to produce a portable, easy-to-use
encoder that we can use to encode large volumes of video material for
the Berkeley VOD system (see paper VodsProp93.ps.Z on the FTP archive).
The parallelism is done on a sequence of pictures.  In other words, you 
can spawn one or more children to encode continuous runs pictures. The 
uncompressed data can be accessed either through NFS or TCP sockets.  
The goal is to allow you to encode using multiple processors, think 
spare cycles on workstations, to speed up the encoding time.  Although
performance depends on the speed of individual processors, the file system
and network, and the P/B frame search methods, we have encoded 3.75
frames/second on 8 HP Snakes running in parallel as compared with 0.6
frames/second on 1 Snake.  These are preliminary results. We are continuing 
to experiment with and tune the code.  Instructions to run the parallel system 
are given in the man page and the parallel.param example parameter file.

We have done some tuning to produce a reasonable encoder, but there are
many more optimizations that we would like to incorporate.  These 
extensions are listed in the file doc/EXTENSIONS.  If you succeed in 
implementing any of them, please let us know! 

Send bug reports to:

mpeg-bugs@CS.Berkeley.EDU
   Problems, questions, or patches should be sent to this address.

Anyone interested in providing financial support for this research or 
discussing other aspects of this project should contact Larry Rowe at 
Rowe@CS.Berkeley.EDU (+1 510-642-5117).

This software is freely distributed.  That means, you may use it for 
any non-commercial purpose.  However, patents are held by several companies 
on various aspects of the MPEG video standard.  Companies or individuals
who want to develop commercial products that include this code must
acquire licenses from these companies.  For information on licensing, see
Appendix F in the standard.

ACKNOWLEDGEMENTS:

We gratefully thank Hewlett-Packard and Fujitsu who provided financial
support for this work.  We also want to thank the following people and
organizations for their help:

    Jef Poskanzer who developed the pbmplus package.
    ---------
    Copyright (C) 1989, 1991 by Jef Poskanzer.

    Permission to use, copy, modify, and distribute this software and its
    documentation for any purpose and without fee is hereby granted, provided
    that the above copyright notice appear in all copies and that both that
    copyright notice and this permission notice appear in supporting
    documentation.  This software is provided "as is" without express or
    implied warranty.
    ---------

    Eiichi Kowashi of Intel and Avideh Zakhor of U.C. Berkeley who
    provided valuable suggestions on motion vector searching.

    Chad Fogg of the University of Washington who has helped us 
    understand many issues in MPEG coding and decoding.

    Rainer Menes of the Technical University of Munich who has ported the
    the Berkeley MPEG encoder and decoder to the Macintosh, and he has 
    provided us with many suggestions to improve the code.

    Robert Safranek of ATT for comments, suggestions, and most of the
    code for custom quantization tables.

    Jim Boucher of Boston University for jmovie2jpeg.

    The San Diego SuperComputing Center for providing facilities to 
    develop some of the code contained within.

-- 
Eugene Hung                             eyhung@garnet.berkeley.edu

---------------------------------------------------------------------------

~Subject: MPEG Video Software Decoder

                  MPEG Video Software Decoder
                  (Version 2.1; May 1 1995)

 Lawrence A. Rowe, Ketan Patel, Brian Smith, Steve Smoot, and Eugene Hung
      Computer Science Division-EECS, Univ. of Calif. at Berkeley

This directory contains a public domain MPEG video software
decoder. The decoder is implemented as a library that will
take a video stream and display it in an X window on an 8, 24
or 32 bit deep display.  The main routine is supplied to
demonstrate the use of the decoder library. Several dithering
algorithms are supplied based on the Floyd-Steinberg, ordered
dither, and half-toning algorithms that tradeoff quality and
performance. Neither the library nor the main routine handle
real-time synchronization or audio streams.

The decoder implements the standard described in the Committee 
Draft ISO/IEC CD 11172 dated December 6, 1991 which is
sometimes refered to as "Paris Format." The code has been
compiled and tested on the following platforms:

 HP PA-RISC (HP/UX 9.X, X11R5) (i.e., HP 9000/7XX and 9000/3XX)
 Sun Sparc (SunOS 4.X, X11R5)
 DECstation 5000 and Alpha
 Silicon Graphics Indigo
 MIPS RISC/os 4.51

If you decide to port the code to a new architecture, please let
us know if there are any significant changes, so that we can incorporate
them into our sources. 

This directory contains everything required to build and
display video. We have included source code, a makefile, an Imakefile,
installation instructions, and a man page. Data files can
be obtained from the same ftp site this was located in.
See the INSTALL file for instructions on how to
compile and run the decoder. 

The data files were produced by XING. XING data does not take
advantage of P or B frames (ie, frames with motion compensation). 
Performance of the player on XING data is significantly slower 
(half or less) than the performance when motion compensated MPEG 
data is decoded. We are very interested in running the software 
on other MPEG streams.  Please contact us if you have a stream 
that does not decode correctly. Also, please send us new streams
produced by others that do utilize P and B frames.

Our future plans include porting the decoder to run on other
platforms, integrating it into a video playback system that
supports real-time synchronization and audio streams, and
further experiments to improve the performance of the
decoder. Vendors or other organizations interested in supporting 
this research or discussing other aspects of this project should 
contact Larry Rowe at Rowe@CS.Berkeley.EDU.

Other Versions:
There are three variations of the old mpeg_play:
  One added a very nice Motif interface (variously named 
	mpeg_play-2.0.1 and xmpegplay).
  One was mpegvga.patch and let linux play straight to a VC.
  One was an X interface (mpegplayer.tar.gz on linux sites)
We have notified the authors of those programs, and will
have new versions of them here as soon as they can find the time
to update them.


Reporting bugs:
    If you find any bugs in this software, please send them to
    mpeg-bugs@plateau.cs.berkeley.edu.  Since this software
    is unsupported, we make no guarantees about how long it will
    take to fix the bug, or if it will be fixed at all.  Bug fixes
    will be cheerfully accepted.  Please include as much detailed
    information as possible, including:

	1) the version number of the program you are using (cf. VERSION)
	2) the data file that caused the bug (if possible)
	3) the OS version and machine type you ran the program on
	4) the compiler used to compile the program

ACKNOWLEDGEMENTS:
	We gratefully thank Hewlett-Packard, Fujitsu, the Semiconductor
	Research Corporation for financial support.

	We also want to thank the following people for their help:

	Tom Lane of the Independent JPEG Group provided us with
		the basic inverse DCT code used by our player.
		(tom_lane@g.gp.cs.cmu.edu)

	Reid Judd of Sun Microsystems provided advice and assistance.

	Todd Brunhoff of NVR provided advice and assistance.

	Toshihiko Kawai of Sony provided advice and assistance.

-- 
Eugene Hung                             eyhung@garnet.berkeley.edu

---------------------------------------------------------------------------

~Subject: MPEG Video Software Analyzer

                  MPEG Video Software Analyzer
                  (Version 1.0; May 81995)

 Lawrence A. Rowe, Doug Banks, Steve Smoot, and Sam Tze-San Fung 
 Computer Science Division-EECS, Univ. of Calif. at Berkeley

This directory contains a public domain tool to monitor and modify 
MPEG video streams.  mpeg_bits takes as input an mpeg stream and
presents graphical feedback on the distribution of bits in the
stream, on a macroblock-by-macroblock level.  mpeg_bits also provides
a simple user interface to generate specifics files that can be
used by mpeg_encode to re-encode a stream, modifying the encoding 
on a macroblock-by-macroblock level.  [The present version of mpeg_encode
does not support this..]

This tool does not support system layer streams.

mpeg_bits supports the standard described in the Committee 
Draft ISO/IEC CD 11172 dated December 6, 1991 which is
sometimes refered to as "Paris Format." The code has been
compiled and tested at least once on the following platforms:
	
 HP PA-RISC (HP/UX 9.X, X11R5) (i.e., HP 9000/7XX and 9000/3XX)
 Sun Sparc (SunOS 4.X, X11R5)

If you decide to port the code to a new architecture, please let
us know about important changes, so that we can incorporate the changes
into our sources. 

This directory contains everything required to build and use
mpeg_bits.  We have included source code, a makefile, installation
instructions, and a man page.  

See the INSTALL file for instructions on how to
compile and run the analyzer.

Our future plans consist of more fully supporting an interactive
editor paradigm; specifying changes directly on the display, 
seeing the results of edits on the video stream immediately
as they occur, etc.  We would also like to port the code to
run on more platforms, and add support for system layer streams.
Vendors or other organizations interested in supporting 
this research or discussing other aspects of this project should 
contact Larry Rowe at Rowe@CS.Berkeley.EDU.

Reporting bugs:
    If you find any bugs in this software, please send them to
    mpeg-bugs@plateau.cs.berkeley.edu.  Since this software
    is unsupported, we make no guarantees about how long it will
    take to fix the bug, or if it will be fixed at all.  Bug fixes
    will be cheerfully accepted.  Please include as much detailed
    information as possible, including:

	1) the version number of the program you are using (cf. VERSION)
	2) the data file that caused the bug (if possible)
	3) the OS version and machine type you ran the program on
	4) the compiler used to compile the program

ACKNOWLEDGEMENTS:
	We gratefully thank Hewlett-Packard, Fujitsu, the Semiconductor
	Research Corporation for financial support.

	We also want to thank the following people for their help:

	Tom Lane of the Independent JPEG Group provided us with
		the basic inverse DCT code used by our player.
		(tom_lane@g.gp.cs.cmu.edu)

	Reid Judd of Sun Microsystems provided advice and assistance.

	Todd Brunhoff of NVR provided advice and assistance.

	Toshihiko Kawai of Sony provided advice and assistance.

-- 
Eugene Hung                             eyhung@garnet.berkeley.edu

---------------------------------------------------------------------------

~Subject: MPEG Blocks Analyzer

                    MPEG Blocks Analyzer
                  (Version 1.0; Feb 1 1995)

                       Ketan Patel
                       Steve Smoot 
                       Brian Smith
                     Sam Tze-San Fung

 Computer Science Division-EECS, Univ. of Calif. at Berkeley

This directory contains a public domain MPEG video software
analyzer.  It operates by playing a video stream in one window, while
another window displays the block type and motion vectors for each block in
the current frame.

The decoder implements the standard described in the Committee 
Draft ISO/IEC CD 11172 dated December 6, 1991 which is
sometimes refered to as "Paris Format." The code has been
compiled and tested on the following platforms:


 HP PA-RISC (HP/UX 8.X, X11R4) (i.e., HP 9000/7XX and 9000/3XX)
 Sun Sparc (SunOS 4.X, X11R5)

This directory contains everything required to build and
display video. We have included source code, a makefile, 
installation instructions, and a man page. Data files can
be obtained from the same ftp site this was located in.
See the INSTALL file for instructions on how to
compile and run mpeg_blocks.

Problems, questions, or patches should be sent to:
	mpeg-bugs@Plateau.CS.Berkeley.EDU

ACKNOWLEDGEMENTS:
	We gratefully thank Hewlett-Packard, Fujitsu, the Semiconductor
	Research Corporation for financial support.

	We also want to thank the following people for their help:

	Tom Lane of the Independent JPEG Group provided us with
		the basic inverse DCT code used by our player.
		(tom_lane@g.gp.cs.cmu.edu)

	Reid Judd of Sun Microsystems provided advice and assistance.

	Todd Brunhoff of NVR provided advice and assistance.

	Toshihiko Kawai of Sony provided advice and assistance.

-- 
Eugene Hung                             eyhung@garnet.berkeley.edu

---------------------------------------------------------------------------

~Subject: MPEG Video Software Statistics Gatherer

              MPEG Video Software Statistics Gatherer
                  (Version 2.2; May 8, 1995)

 Lawrence A. Rowe, Steve Smoot, Ketan Patel, and Brian Smith
 Computer Science Division-EECS, Univ. of Calif. at Berkeley

This directory contains a public domain MPEG video statistics gatherer.
The decoder implements the standard described in the Committee 
Draft ISO/IEC CD 11172 dated December 6, 1991 which is
sometimes referred to as "Paris Format." The code has been
compiled and tested on the following platforms:

 HP PA-RISC (HP/UX 9.X) (i.e., HP 9000/7XX and 9000/3XX)
 Sun Sparc (SunOS 4.X)
 DECstation 5000 and Alpha
 Sequent
 Irix 4.0.5
 Linux

See the CHANGES file for information on all the improvements over 2.0

See the manual page for information on how to use mpeg_stat.

Send bug reports to mpeg-bugs@plateau.cs.berkeley.edu,
job offers (PhD in '96) to smoot@cs.berkeley.edu ;-)

Vendors or other organizations interested in supporting 
this research or discussing other aspects of this project should 
contact Professor Larry Rowe at rowe@CS.Berkeley.EDU.

FUTURE PLANS:
In the next version I'd like to beef up the verification code and do
something with system layer audio (when present).  In addition (major
though) MPEG-2 would be cool.  If you send me code to do any of this, it
will be much appreciated.  (In general, though, I'll only be improving it
to meet my thesis needs. -srs)

INSTALL:
  If you have gcc, type "make"
  See the file INSTALL for slightly more help.

AUDIO (we don't do audio, but Chad Fogg points out):
  CCETT has been distributing executables only of their Audio bitstream
  syntax verifier.  The site address is: 161.105.2.22
  Audio conformance bitstreams are also at ftp.tnt.uni-hannover.de 

ACKNOWLEDGEMENTS:
	We gratefully thank Hewlett-Packard, Fujitsu, the Semiconductor
	Research Corporation for financial support.

	We also want to thank the following people for their help:

	Tom Lane of the Independent JPEG Group provided us with
		the basic inverse DCT code used by our player.
		(tom_lane@g.gp.cs.cmu.edu)

	Reid Judd of Sun Microsystems provided advice and assistance.

	Todd Brunhoff of NVR provided advice and assistance.

	Toshihiko Kawai of Sony provided advice and assistance.

-- 
Eugene Hung                             eyhung@garnet.berkeley.edu

---------------------------------------------------------------------------

~Subject: xmg

XMG v1.0 - The X MPEG Grabber  
*******************************

DESCRIPTION
+++++++++++

XMG is a utility for the X Window System which allows you to create MPEG-1 video streams by repeatedly
grabbing a window on the screen and then joining the frames into an MPEG sequence. XMG has several
options that modify its behaviour, but it also provides sensible defaults for most of them. The two switches that
you'll use most of the time are -fps (or -fpm) and -frames. These specify the number of frames per second (or
per minute) and the total number of frames to grab. Here's an example invocation : 

        xmg -fps 1 -frames 20

This specifies that we want to grab 20 frames, one per second, and also that we want to see what's going on
during the grabbing process. At this point the XMG window will appear : 

                         

Click on the "Grab" button and then click with the left mouse button inside the window that you want to grab.
Once you've done this, the grabbing process will begin immediately, displaying some progress information as
it does it. It is possible to change a few parameters directly from inside the window, instead of specifying them
on the command line. When all the frames have been grabbed, the MPEG encoding process begins: go off and
make yourself a nice cup of tea and come back later. By default the program creates a file called xmgout.mpg
in the current directory. This file can then be viewed with any MPEG player which supports I,P and B frames
of any size (Xing for example, doesn't support them). You can specify a different name for the output file with
the -output switch. For example, the command : 

        xmg -fps 1 -frames 20 -output mympeg.mpg

will create a file called mympeg.mpg. When XMG is grabbing the frames, it stores them in a temporary RLE
compressed and archived format called XLA. This file can become quite large very quickly, especially if you're
grabbing several frames of a certain size. This file will be created by default in the /tmp directory with the
name xmgtmp.$$$. This can be changed with the -tmp option : 

        xmg -fps 1 -frames 20 -tmp /empty/xmpeggrab.tmp

which will create it in the /empty directory with the name xmpeggrab.tmp. Make sure you've got plenty of
space on the device ! To actually perform the encoding, XMG requires a parameter file. By default this file is
called xmg.param and has to be in the current directory. Don't worry if you haven't got one : XMG will create
a default one for you and use that. A different parameter file can be specified with the -param switch : 

        xmg -fps 1 -frames 20 -param flower.param

This will use the file flower.param. A description of the possible contents of the paramter file is provided later
on. 

SYNOPSIS
++++++++

    xmg
        -help
        -display host:dpy
        -frames nframes
        -fps nfps
        -fpm nfpm
        -terse 
        -output filename
        -tmp filename
        -param filename

OPTIONS
+++++++

-fps nfps : specifies the number of frames per second to grab. Even if the machine you're using is slow, XMG
will grab the server during the grab, so that no other application can write to the screen at the same time. As
soon as the frame has been grabbed, the server is released so that the other applications can redraw their client
area. 

-fpm nfpm : specifies the number of frames per minute to grab. 

-frames nframes : specifies the number of frames to grab in total. 

-output filename : specifies a name and location for the generated MPEG stream. By default XMG creates a
file in the current directory called xmgout.mpg. 

-tmp filename : specifies a name and location for the temporary storage of the grabbed frames. This file is
deleted when XMG has completed the encoding process. The default is /tmp/xmgtmp.$$$ 

-terse : does not display the XMG status window during the grabbing/encoding process. The default is to
display the XMG window. 

-param : specifies a name and location for the parameter file. By default the file is called xmg.param and has to
be in the current directory. If one doesn't exist, a default one will be created for you. 

PARAMETER FILE
++++++++++++++

The parameter file MUST contain the following lines : 

PATTERN pattern
---------------

pattern is a sequence of I's, P's and B's, that specifies the order of the frames in the MPEG stream. 

GOP_SIZE n
----------

n is roughly the number of frames in a Group of Pictures (roughly because a GOP must begin with an I-frame) 

SLICES_PER_FRAME n
------------------

n is roughly the number of slices per frame. Note, at least one MPEG player may complain if slices do not start
at the left side of an image. To ensure this does not happen, make sure the number of rows is divisible by
SLICES_PER_FRAME. 

PIXEL (FULL or HALF)
--------------------

use half-pixel motion vectors, or only full-pixel ones 

RANGE 
------

use a search range of +/- n pixels 

PSEARCH_ALG algorithm
---------------------

algorithm must be one of {EXHAUSTIVE, TWOLEVEL, SUBSAMPLE, LOGARITHMIC}. Tells what kind
of search procedure should be used for P-frames. Exhaustive gives the best compression, but logarithmic is the
fastest. You select the desired combination of speed and compression. TWOLEVEL is an exhaustive full-pixel
search, followed by a local half- pixel search around the best full-pixel vector (the PIXEL option is ignored
for this search algorithm). BSEARCH_ALG algorithm must be one of {SIMPLE, CROSS2, EXHAUSTIVE}.
Tells what kind of search procedure should be used for B-frames. Simple means find best forward and
backward vectors, then interpolate. Cross2 means find those two vectors, then see what backward vector best
matches the best forward vector, and vice versa. Exhaustive does an n-squared search and is EXTREMELY
slow in relation to the others (Cross2 is about twice as slow as Simple). 

IQSCALE
-------

use n as the qscale for I-frames 

PQSCALE
-------

use n as the qscale for P-frames 

BQSCALE
-------

use n as the qscale for B-frames 

REFERENCE_FRAME (ORIGINAL or DECODED)
-------------------------------------

If ORIGINAL is specified, then the original images are used when computing motion vectors. To be more
accurate, use DECODED, in which the decoded images are used. This should increase the quality of the image,
but will take a bit longer to encode. 

The lines may appear in any order, except the following exceptions. 

NOTES
+++++

If XMG was compiled with the -DMITSHM switch enabled, then shared memory will be used if available and
will increase performance noticeably. 

AUTHOR
++++++

Tristan Tarrant - University of Sussex, UK, tristant@cogs.susx.ac.uk 

CREDITS
+++++++

MPEG encoding based on mpeg_encode by : 

Kevin Gong - University of California, Berkeley, keving@cs.berkeley.edu 

Ketan Patel - University of California, Berkeley, kpatel@cs.berkeley.edu 

Dan Wallach - University of California, Berkeley, dwallach@cs.berkeley.edu 

BUGS AND LIMITATIONS
++++++++++++++++++++

XMG works only on Pseudo-Color displays. No known bugs. 

Tristan Tarrant, tristant@cogs.susx.ac.uk

---------------------------------------------------------------------------

~Subject: mpegstat

Tom Pfeifer (pfeifer@fokus.gmd.de) announces:

[ mpegstat.tar.Z was uploaded to mm-ftp.cs.berkeley.edu, the DOS-port ]
[ is available on http://www.powerweb.de/mpeg                         ]
[ It will probably included in the next version of Berkeley's encoder ]

This is mpegstat v1.0 - an analyzing took for MPEG-I video streams for Unix. 
It is based on the Berkeley MPEG player v2.0, utilizing the Berkeley parsing 
and decoding routines for the MPEG data stream.


MPEGSTAT is  a  useful utility for analyzing MPEG-I video
streams. It is based on the Berkeley  MPEG  movie  player.
MPEGSTAT reads  a  video  stream from a file or stdin and
shows the frame type pattern as it is found while parsing.
After  the  stream  is  completely  parsed it displays the
frame pattern as it would be displayed by a  MPEG  viewer.
It then generates a summary of various mpeg format related
statistics.  MPEGSTAT works for MPEG movies that are Paris
format compatible.


Authors

Multimedia  systems  project - Technical University of Berlin, Germany
Tom   Pfeifer,   Dept.   of    Computer    Science, pfeifer@fokus.gmd.de
Jens  Brettin - Alexander Schulze - Harald Masche - Dirk Schubert

---------------------------------------------------------------------------

~Subject: mplex

*********************************************************************
*                                                                   *
*         ANNOUNCING OF A FREE MPEG 1/SYSTEMS MULTIPLEXER           *
*                                                                   *
*   thanks to                                                       *
*   ^^^^^^^^^                                                       *
*    SIEMENS LTD, CORPORATE RESEARCH AND DEVELOPMENT ZFE ST SN 11   *
*         TECHNICAL UNIVERSITY OF MUNICH, PROF. SCHLICHTER          *
*                                                                   *
*********************************************************************


Hello all.

This is an announcing for all of those that have already been waiting
on the release of my code for multiplexing one  MPEG 1 Audio  and one
MPEG 1 Video Stream   into a  MPEG 1/SYSTEMS  multiplexed data stream
according to the ISO/IEC 11172-1 specs.  Sorry for all of those  that
needed the code really bad and kept mailing me on it. I couldn't hold
my promises because of copyright release on part of the University.

But here it is: I uploaded the source code on

URL=ftp://hpsystem2.informatik.tu-muenchen.de//pub/comp/graphics/mpeg/mplex/mplex-1.0beta.tar.gz
    [131.159.0.198]
    ftp.informatik.tu-muenchen.de

.gz means it is compressed with GNU zip. Should somebody not have it,
you can find it on our FTP server under

   /pub/comp/gnu/gzip/

else, just try

   get mplex-1.0beta.tar.Z

Our FTP server will do an on-the-fly-compressing with the 'compress'
(.Z) format.


Now to the code itself:

I have been kept really busy with my papers on multiplexing (they will
shortly be available on the FTP server also, I will post on that),  so
sorry if I couldn'g tighten the code up a bit.  There is no real docu-
mentation yet, please try out the code.  Feel free to email me for any
further questions.

As of now, this code will only run under standard UN*X-Style platforms
providing a (K&R-Style) C compiler (GNU CC is fine). It tested fine on
SUN's, HEWLETT PACKARD's series 700, SILICON GRAPHICS machine's.
There is * NO DOS PORT AVAILABLE (YET) *.

Contact me if you are planning such a thing.

There will be better releases, and I promise to clean up the code soon.

:)

This Software is released under the terms of the GNU public license,
see the tar archive for further details. Feel free to archive the code
on other FTP servers or post it to newsgroups, if there is such
interest.


Research done at 

    SIEMENS LTD, CORPORATE RESEARCH AND DEVELOPMENT ZFE ST SN 11
    TECHNICAL UNIVERSITY OF MUNICH, PROF. SCHLICHTER

Christoph Moar             moar@Informatik.TU-Muenchen.DE (Christoph Moar)

---------------------------------------------------------------------------

~Subject: xmplay

[ Here it is !! The first, fully-featured MPEG-player with X11-interface. ]
[ XMPLAY exists currently in Version 1.0, patches are available. The next ]
[ Version 1.1 is currently in development. Thats the announcement !       ]

            XMPLAY [Version 1.1] - Sun Apr 10 14:51:22 MDT 1994

      This distribution is the result of a project worked out at the
      Technical University (TU) Berlin, held in Winter 93/94 by
      Tom Pfeifer. The basic idea is created by Frank Gadegast,
      the programing work was then done by Juergen Meyer, Metin
      Cetinkaya and Frank Gadegast.

This software is ftp-able from:

http://www.powerweb.de/mpeg

[ Just to remember .gz means, its compressed using GNU's zip, called ]
[ gzip. Use gunzip to uncompress.                                    ]


XMPLAY [Version 1.1]

<IMG SRC="xmplay1.gif"> <IMG SRC="xmplay2.gif">

XMPLAY is a very nice directory-browser under X11 to use XMPEG,
the interactive X11-MPEG-player.

MPEG is a video-format described by the ISO-standard ISO CD11172.
This implementation here can handle MPEG-stream written down
at the MPEG-group-meeting in Paris '92. It can handle IPB-frames
but no system- nor audio-information.

<IMG SRC="xmplay3.gif"> <IMG SRC="xmplay4.gif">

Additional you get a little utility called MPEGINFO, showing you, if called
with the filename of a MPEG-file the most important parameter it can read
dirrectly from its header, like size, picture rate or frame-style.

It should work under nearly every system, 'cause it's programed without
MOTIF, the X11-Toolit or other stupid things, that are always causing
problems. It only needs the X11-library, no matter if you're using
Release 3, 4 or Release 5.

In addition it has lots of defines to let it run under BSD, SYSV, ISC,
Solaris, SunOS, A/UX, SCO or XENIX and you don't have to hack a difficult
Imake- or Makefile and you will not have trouble with build-in pathnames !!!

It's specially made for those systems, that don't have super hardware
or that have problems with the Toolkit or MOTIF.


XMPEG [Version 1.1]

<IMG SRC="xmpeg1.gif"> <IMG SRC="xmpeg3.gif">

XMPEG is a MPEG-video-player based on the MPEG-widget-implementation
from Jim Frost and the MPEG-movie-player "mpeg_play" from the Portable
Video Research Group at Berkeley.

It just adds a few buttons and is normally getting called
from XMPLAY, but can be used as stand-alone to include into other
programs. Its programmed with the same methods than XMPLAY.

<IMG SRC="xmpeg2.gif"> <IMG SRC="xmpeg4.gif">


You can download XMPLAY from http://www.powerweb.de/mpeg.

If you get problems (not really possible) to compile it or if you have
comments send them to the authors, reachable at:

        phade@powerweb.de (responsible for compiling and X11)
        jm@cs.tu-berlin.de (responsible for the mpeg-code) or
        brain@cs.tu-berlin.de

---------------------------------------------------------------------------




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру