<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java_Tutorial%2FJ2ME%2FVideo</id>
		<title>Java Tutorial/J2ME/Video - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java_Tutorial%2FJ2ME%2FVideo"/>
		<link rel="alternate" type="text/html" href="http://jexp.ru/index.php?title=Java_Tutorial/J2ME/Video&amp;action=history"/>
		<updated>2026-04-09T23:40:30Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://jexp.ru/index.php?title=Java_Tutorial/J2ME/Video&amp;diff=4164&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://jexp.ru/index.php?title=Java_Tutorial/J2ME/Video&amp;diff=4164&amp;oldid=prev"/>
				<updated>2010-06-01T05:00:25Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 05:00, 1 июня 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://jexp.ru/index.php?title=Java_Tutorial/J2ME/Video&amp;diff=4163&amp;oldid=prev</id>
		<title> в 17:44, 31 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://jexp.ru/index.php?title=Java_Tutorial/J2ME/Video&amp;diff=4163&amp;oldid=prev"/>
				<updated>2010-05-31T17:44:27Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==  Display Video ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import javax.microedition.lcdui.Alert;&lt;br /&gt;
import javax.microedition.lcdui.Canvas;&lt;br /&gt;
import javax.microedition.lcdui.rumand;&lt;br /&gt;
import javax.microedition.lcdui.rumandListener;&lt;br /&gt;
import javax.microedition.lcdui.Display;&lt;br /&gt;
import javax.microedition.lcdui.Displayable;&lt;br /&gt;
import javax.microedition.lcdui.Form;&lt;br /&gt;
import javax.microedition.lcdui.Graphics;&lt;br /&gt;
import javax.microedition.lcdui.Item;&lt;br /&gt;
import javax.microedition.lcdui.List;&lt;br /&gt;
import javax.microedition.lcdui.StringItem;&lt;br /&gt;
import javax.microedition.media.Manager;&lt;br /&gt;
import javax.microedition.media.Player;&lt;br /&gt;
import javax.microedition.media.control.GUIControl;&lt;br /&gt;
import javax.microedition.media.control.VideoControl;&lt;br /&gt;
import javax.microedition.midlet.MIDlet;&lt;br /&gt;
public class DisplayVideoMIDlet extends MIDlet implements CommandListener {&lt;br /&gt;
  private List list = new List(&amp;quot;Pick One&amp;quot;, List.IMPLICIT);&lt;br /&gt;
  private Canvas canvas = new VideoCanvas();&lt;br /&gt;
  private Form form = new Form(&amp;quot;Video Form&amp;quot;, null);&lt;br /&gt;
  private StringItem descriptionItem = new StringItem(&amp;quot;Desc: &amp;quot;, &amp;quot;Bad audio&amp;quot;);&lt;br /&gt;
  Player player = null;&lt;br /&gt;
  private Command backCommand = new Command(&amp;quot;Back&amp;quot;, Command.ITEM, 1);&lt;br /&gt;
  private Command exitCommand = new Command(&amp;quot;Exit&amp;quot;, Command.EXIT, 1);&lt;br /&gt;
  private Alert alert = new Alert(&amp;quot;Error&amp;quot;);&lt;br /&gt;
  private Display display = null;&lt;br /&gt;
  private boolean error = false;&lt;br /&gt;
  public DisplayVideoMIDlet() {&lt;br /&gt;
    display = Display.getDisplay(this);&lt;br /&gt;
    canvas.addCommand(exitCommand);&lt;br /&gt;
    canvas.addCommand(backCommand);&lt;br /&gt;
    canvas.setCommandListener(this);&lt;br /&gt;
    form.append(descriptionItem);&lt;br /&gt;
    form.addCommand(exitCommand);&lt;br /&gt;
    form.addCommand(backCommand);&lt;br /&gt;
    form.setCommandListener(this);&lt;br /&gt;
    list.append(&amp;quot;Play Video on Form&amp;quot;, null);&lt;br /&gt;
    list.append(&amp;quot;Play Video on Canvas&amp;quot;, null);&lt;br /&gt;
    list.addCommand(exitCommand);&lt;br /&gt;
    list.setCommandListener(this);&lt;br /&gt;
  }&lt;br /&gt;
  public void startApp() {&lt;br /&gt;
    if (error)&lt;br /&gt;
      return;&lt;br /&gt;
    display.setCurrent(list); &lt;br /&gt;
  }&lt;br /&gt;
  public void pauseApp() {&lt;br /&gt;
  }&lt;br /&gt;
  public void destroyApp(boolean unconditional) {&lt;br /&gt;
    try {&lt;br /&gt;
      if (player != null)&lt;br /&gt;
        player.close();&lt;br /&gt;
    } catch (Exception e) {&lt;br /&gt;
      error(e);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  public void commandAction(Command cmd, Displayable disp) {&lt;br /&gt;
    if (cmd == exitCommand) {&lt;br /&gt;
      destroyApp(true);&lt;br /&gt;
      notifyDestroyed();&lt;br /&gt;
    } else if (cmd == backCommand) { &lt;br /&gt;
      try {&lt;br /&gt;
        if (player != null)&lt;br /&gt;
          player.close();&lt;br /&gt;
      } catch (Exception e) {&lt;br /&gt;
        error(e);&lt;br /&gt;
      }&lt;br /&gt;
      display.setCurrent(list);&lt;br /&gt;
      return;&lt;br /&gt;
    }&lt;br /&gt;
    try {&lt;br /&gt;
      loadPlayer();&lt;br /&gt;
      if (list.getSelectedIndex() == 0) { &lt;br /&gt;
        GUIControl guiControl = (GUIControl) player .getControl(&amp;quot;javax.microedition.media.control.GUIControl&amp;quot;);&lt;br /&gt;
        if (guiControl == null)&lt;br /&gt;
          throw new Exception(&amp;quot;No GUIControl!!&amp;quot;);&lt;br /&gt;
        Item videoItem = (Item) guiControl.initDisplayMode(GUIControl.USE_GUI_PRIMITIVE, null);&lt;br /&gt;
        form.insert(0, videoItem);&lt;br /&gt;
        display.setCurrent(form);&lt;br /&gt;
        player.start();&lt;br /&gt;
      } else {&lt;br /&gt;
        VideoControl videoControl = (VideoControl) player.getControl(&amp;quot;javax.microedition.media.control.VideoControl&amp;quot;);&lt;br /&gt;
        if (videoControl == null)&lt;br /&gt;
          throw new Exception(&amp;quot;No VideoControl!!&amp;quot;);&lt;br /&gt;
        videoControl.initDisplayMode(VideoControl.USE_DIRECT_VIDEO, canvas);&lt;br /&gt;
        videoControl.setDisplayFullScreen(true);&lt;br /&gt;
        videoControl.setVisible(true);&lt;br /&gt;
        display.setCurrent(canvas);&lt;br /&gt;
        player.start();&lt;br /&gt;
      }&lt;br /&gt;
    } catch (Exception e) {&lt;br /&gt;
      error(e);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  private void loadPlayer() throws Exception {&lt;br /&gt;
    player = Manager.createPlayer(getClass().getResourceAsStream(&amp;quot;/r.mp4&amp;quot;), &amp;quot;video/mpeg4&amp;quot;);&lt;br /&gt;
    player.realize();&lt;br /&gt;
  }&lt;br /&gt;
  private void error(Exception e) {&lt;br /&gt;
    alert.setString(e.getMessage());&lt;br /&gt;
    alert.setTimeout(Alert.FOREVER);&lt;br /&gt;
    display.setCurrent(alert);&lt;br /&gt;
    e.printStackTrace();&lt;br /&gt;
    error = true;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
class VideoCanvas extends Canvas {&lt;br /&gt;
  public void paint(Graphics g) {&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Moveable Video ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import javax.microedition.lcdui.Alert;&lt;br /&gt;
import javax.microedition.lcdui.rumand;&lt;br /&gt;
import javax.microedition.lcdui.rumandListener;&lt;br /&gt;
import javax.microedition.lcdui.Display;&lt;br /&gt;
import javax.microedition.lcdui.Displayable;&lt;br /&gt;
import javax.microedition.lcdui.Graphics;&lt;br /&gt;
import javax.microedition.lcdui.game.GameCanvas;&lt;br /&gt;
import javax.microedition.media.Manager;&lt;br /&gt;
import javax.microedition.media.Player;&lt;br /&gt;
import javax.microedition.media.control.VideoControl;&lt;br /&gt;
import javax.microedition.media.control.VolumeControl;&lt;br /&gt;
import javax.microedition.midlet.MIDlet;&lt;br /&gt;
public class MoveableVideoMIDlet extends MIDlet implements CommandListener {&lt;br /&gt;
  private Player player = null;&lt;br /&gt;
  private VideoControl videoControl = (VideoControl) player&lt;br /&gt;
      .getControl(&amp;quot;javax.microedition.media.control.VideoControl&amp;quot;);&lt;br /&gt;
  private VolumeControl volControl = (VolumeControl) player&lt;br /&gt;
      .getControl(&amp;quot;javax.microedition.media.control.VolumeControl&amp;quot;);&lt;br /&gt;
  private MovableVideoCanvas canvas = new MovableVideoCanvas(videoControl);&lt;br /&gt;
  private Command exitCommand = new Command(&amp;quot;Exit&amp;quot;, Command.EXIT, 1);&lt;br /&gt;
  private Command stopAudioCommand = null;&lt;br /&gt;
  private Display display = Display.getDisplay(this);&lt;br /&gt;
  private Alert alert = new Alert(&amp;quot;Error&amp;quot;);&lt;br /&gt;
  public MoveableVideoMIDlet() {&lt;br /&gt;
    alert.addCommand(exitCommand);&lt;br /&gt;
    alert.setCommandListener(this);&lt;br /&gt;
    try {&lt;br /&gt;
      player = Manager.createPlayer(getClass().getResourceAsStream(&lt;br /&gt;
          &amp;quot;/r.mp4&amp;quot;), &amp;quot;video/mp4&amp;quot;);&lt;br /&gt;
      player.realize();&lt;br /&gt;
      stopAudioCommand = new Command(&amp;quot;Stop Audio&amp;quot;, Command.SCREEN, 1);&lt;br /&gt;
      canvas.addCommand(exitCommand);&lt;br /&gt;
      canvas.addCommand(stopAudioCommand);&lt;br /&gt;
      canvas.setCommandListener(this);&lt;br /&gt;
      videoControl.initDisplayMode(VideoControl.USE_DIRECT_VIDEO, canvas);&lt;br /&gt;
      int halfCanvasWidth = canvas.getWidth() / 2;&lt;br /&gt;
      int halfCanvasHeight = canvas.getHeight() / 2;&lt;br /&gt;
      videoControl.setDisplayFullScreen(false);&lt;br /&gt;
      videoControl.setDisplaySize(halfCanvasWidth, halfCanvasHeight);&lt;br /&gt;
      videoControl.setDisplayLocation(halfCanvasWidth / 2,&lt;br /&gt;
          halfCanvasHeight / 2);&lt;br /&gt;
      videoControl.setVisible(true);&lt;br /&gt;
    } catch (Exception e) {&lt;br /&gt;
      e.printStackTrace();&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  public void startApp() {&lt;br /&gt;
    try {&lt;br /&gt;
      player.start();&lt;br /&gt;
    } catch (Exception e) {&lt;br /&gt;
      e.printStackTrace();&lt;br /&gt;
    }&lt;br /&gt;
    display.setCurrent(canvas);&lt;br /&gt;
  }&lt;br /&gt;
  public void pauseApp() {&lt;br /&gt;
  }&lt;br /&gt;
  public void destroyApp(boolean unconditional) {&lt;br /&gt;
    try {&lt;br /&gt;
      if (player != null)&lt;br /&gt;
        player.close();&lt;br /&gt;
    } catch (Exception e) {&lt;br /&gt;
      e.printStackTrace();&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  public void commandAction(Command cmd, Displayable disp) {&lt;br /&gt;
    if (cmd == exitCommand) {&lt;br /&gt;
      destroyApp(true);&lt;br /&gt;
      notifyDestroyed();&lt;br /&gt;
    } else if (cmd == stopAudioCommand) {&lt;br /&gt;
      if (volControl != null)&lt;br /&gt;
        volControl.setMute(true);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
class MovableVideoCanvas extends GameCanvas {&lt;br /&gt;
  private VideoControl videoControl = null;&lt;br /&gt;
    public MovableVideoCanvas(VideoControl vControl) {&lt;br /&gt;
    super(false);&lt;br /&gt;
    this.videoControl = vControl;&lt;br /&gt;
  }&lt;br /&gt;
  public void paint(Graphics g) {&lt;br /&gt;
    flushGraphics();&lt;br /&gt;
  }&lt;br /&gt;
  public void keyPressed(int keyCode) {&lt;br /&gt;
    int y = videoControl.getDisplayY();&lt;br /&gt;
      y -= 2;&lt;br /&gt;
    videoControl.setDisplayLocation(videoControl.getDisplayX(), y);&lt;br /&gt;
    repaint();&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;/div&gt;</summary>
			</entry>

	</feed>