Commit 5e0ca682 authored by Henri Fallon's avatar Henri Fallon

* Corrected vlc-howto thanks to Arnaud Gomes-do-Vale
* Fixed a segfault in TS input. Some stream still do not work, or
  work very slowly with many error messages. I'll try to have a look.
parent f367feac
...@@ -3,7 +3,9 @@ ...@@ -3,7 +3,9 @@
#===================# #===================#
HEAD HEAD
* Fixed a segfault in TS input (psi packets with adaptation field).
* Corrected vlc-howto.sgml thanks to Arnaud Gomes-do-Vale
<arnaud@carrosse.frmug.org>.
* Fixed a remaining buffer overflow in the Gnome interface and applied * Fixed a remaining buffer overflow in the Gnome interface and applied
the patches to the Gtk+ interface. the patches to the Gtk+ interface.
* Fixed a segfault in the SPU decoder initialization. * Fixed a segfault in the SPU decoder initialization.
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
<titlepag> <titlepag>
<title>VLC HOWTO</title> <title>VLC HOWTO</title>
<author>by the Videolan Team<tt><htmlurl url="mailto:videolan-faq@videlan.org" name="videolan-faq@videlan.org"></tt></author> <author>by the Videolan Team<tt><htmlurl url="mailto:videolan-faq@videlan.org" name="videolan-faq@videlan.org"></tt></author>
<date>v0.0.2, 21 apr 2001</date> <date>v0.0.3, 21 apr 2001</date>
<abstract> <abstract>
This document describes how to use the vlc (VideoLAN client) to read DVDs and mpeg files and DVDs. This document describes how to use the vlc (VideoLAN client) to read DVDs and mpeg files and DVDs.
...@@ -18,7 +18,7 @@ ...@@ -18,7 +18,7 @@
<sect1> <sect1>
<heading>What is VideoLAN ?</heading> <heading>What is VideoLAN ?</heading>
<p> <p>
VideoLAN is a project of sudent of the École Centrale Paris which aims VideoLAN is a project of sudents of the École Centrale Paris which aims
to broadcast video on the campus, and provide the students with a MPEG2 to broadcast video on the campus, and provide the students with a MPEG2
software-only decoder. VideoLAN is an OpenSource project which will thus software-only decoder. VideoLAN is an OpenSource project which will thus
allow anyone to watch DVD movies under Linux, BeOS, MacOS and most Unix allow anyone to watch DVD movies under Linux, BeOS, MacOS and most Unix
...@@ -35,7 +35,7 @@ ...@@ -35,7 +35,7 @@
<p> <p>
Vlc stands for VideoLAN client. It is the name of the program which is Vlc stands for VideoLAN client. It is the name of the program which is
capable of decoding MPEG streams, and displaying them onto your screen, capable of decoding MPEG streams, and displaying them onto your screen,
so you can watch you favorite movies, confortably sit in your armchair so you can watch you favourite movies, confortably sit in your armchair
:-). :-).
</p> </p>
</sect1> </sect1>
...@@ -81,7 +81,7 @@ ...@@ -81,7 +81,7 @@
<sect> <sect>
<heading>Installing the vlc : the packages</heading> <heading>Installing the vlc : the packages</heading>
<p> <p>
This is certainly the most simple way to intsall the vlc on your system, This is certainly the simplest way to intsall the vlc on your system,
especially if you're using a packaged OS. especially if you're using a packaged OS.
</p> </p>
...@@ -93,17 +93,17 @@ ...@@ -93,17 +93,17 @@
<sect1> <sect1>
<heading>Linux/Unix users</heading> <heading>Linux/Unix users</heading>
<sect2> <sect2>
<heading>What package to chose ?</heading> <heading>Which package to chose ?</heading>
<p> <p>
There are different packages because vlc has "plugins" which provide functionnalities There are different packages because vlc has "plugins" which provide features
but also enlarges the executable and requires external libs. but also enlarge the executable and require external libs.
</p> </p>
<p> <p>
SDL is a lib which allows you to have an accelerated video output. SDL is a lib which allows you to have an accelerated video output.
You will need libsdl > 1.1.6 You will need libsdl > 1.1.6
</p> </p>
<p> <p>
If you're using the enlighted sound daemon, you may want to try If you're using the enlightened sound daemon, you may want to try
the esd-aware vlc. the esd-aware vlc.
</p> </p>
<p> <p>
...@@ -198,7 +198,7 @@ ...@@ -198,7 +198,7 @@
<verb> <verb>
vlc [file name] vlc [file name]
</verb> </verb>
To play a dvd, if you dvd device is "/dev/dvd", you'll type : To play a dvd, if your dvd device is "/dev/dvd", you'll type :
<verb> <verb>
vlc dvd:/dev/dvd vlc dvd:/dev/dvd
</verb> </verb>
...@@ -393,7 +393,7 @@ ...@@ -393,7 +393,7 @@
</p> </p>
<p> <p>
When you're done with Makefile.opts (which also works if you leave it untouched), just When you're done with Makefile.opts (which also works if you leave it untouched), just
make, typing : type:
<verb> <verb>
make make
</verb> </verb>
...@@ -418,7 +418,7 @@ ...@@ -418,7 +418,7 @@
<heading>Using the videolan network solution</heading> <heading>Using the videolan network solution</heading>
<p> <p>
I'll only speak about the vlc here. There will be a howto on the whole network solution. I'll only speak about the vlc here. There will be a howto on the whole network solution.
You have to say to the vlc that it'll receive network streams. This can be done either by * You have to tell the vlc that it will receive network streams. This can be done either by
using the "network" button of the interface, or in the command line : using the "network" button of the interface, or in the command line :
<verb> <verb>
vlc ts://server[:port] vlc ts://server[:port]
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* mpeg_system.c: TS, PS and PES management * mpeg_system.c: TS, PS and PES management
***************************************************************************** *****************************************************************************
* Copyright (C) 1998, 1999, 2000 VideoLAN * Copyright (C) 1998, 1999, 2000 VideoLAN
* $Id: mpeg_system.c,v 1.52 2001/04/28 03:36:25 sam Exp $ * $Id: mpeg_system.c,v 1.53 2001/05/02 13:30:30 henri Exp $
* *
* Authors: Christophe Massiot <massiot@via.ecp.fr> * Authors: Christophe Massiot <massiot@via.ecp.fr>
* Michel Lespinasse <walken@via.ecp.fr> * Michel Lespinasse <walken@via.ecp.fr>
...@@ -1048,7 +1048,7 @@ void input_DemuxTS( input_thread_t * p_input, data_packet_t * p_data ) ...@@ -1048,7 +1048,7 @@ void input_DemuxTS( input_thread_t * p_input, data_packet_t * p_data )
/* If this is a PCR_PID, and this TS packet contains a /* If this is a PCR_PID, and this TS packet contains a
* PCR, we pass it along to the PCR decoder. */ * PCR, we pass it along to the PCR decoder. */
if( (p_pgrm_demux->i_pcr_pid == i_pid) && (p[5] & 0x10) ) if( !b_psi && (p_pgrm_demux->i_pcr_pid == i_pid) && (p[5] & 0x10) )
{ {
/* There should be a PCR field in the packet, check /* There should be a PCR field in the packet, check
* if the adaptation field is long enough to carry * if the adaptation field is long enough to carry
...@@ -1484,13 +1484,19 @@ static void input_DecodePMT( input_thread_t * p_input, es_descriptor_t * p_es ) ...@@ -1484,13 +1484,19 @@ static void input_DecodePMT( input_thread_t * p_input, es_descriptor_t * p_es )
break; break;
case MPEG1_AUDIO_ES: case MPEG1_AUDIO_ES:
case MPEG2_AUDIO_ES: case MPEG2_AUDIO_ES:
case AC3_AUDIO_ES :
case LPCM_AUDIO_ES : case LPCM_AUDIO_ES :
p_new_es->i_cat = AUDIO_ES; p_new_es->i_cat = AUDIO_ES;
i_audio_es += 1; i_audio_es += 1;
if( i_audio_es == i_required_audio_es ) if( i_audio_es == i_required_audio_es )
input_SelectES( p_input, p_new_es ); input_SelectES( p_input, p_new_es );
break; break;
case AC3_AUDIO_ES :
p_new_es->i_stream_id = 0xBD;
p_new_es->i_cat = AUDIO_ES;
i_audio_es += 1;
if( i_audio_es == i_required_audio_es )
input_SelectES( p_input, p_new_es );
break;
/* Not sure this one is fully norm-compliant */ /* Not sure this one is fully norm-compliant */
case DVD_SPU_ES : case DVD_SPU_ES :
p_new_es->i_cat = SPU_ES; p_new_es->i_cat = SPU_ES;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment