• Thứ Năm, 27/04/2006 15:43 (GMT+7)

    Xem TV trên Linux

    Xem TV trên máy tính không phải là điều mới mẻ. Câu hỏi đặt ra là bạn đang xem TV trên hệ điều hành nào, Windows, Linux hay HĐH nào khác? Bài viết này xoay quanh chủ đề xem TV trong môi trường Linux.

    Xem TV trên máy tính không phải là một điều mới mẻ. Câu hỏi đặt ra là bạn đang xem TV trên hệ điều hành (HĐH) nào, Windows, Linux, hay HĐH nào khác? Bài viết này xoay quanh chủ đề xem TV trong môi trường Linux.

    1. CHIPSET CỦA CARD TV

    Khái niệm TV được đề cập trong bài viết này là analog TV (truyền hình tương tự) chứ không phải digital TV (truyền hình số). Analog TV là dạng truyền hình truyền thống mà chúng ta đang xem hàng ngày. Dạng truyền hình này đến với người xem TV qua anten hoặc qua đường cáp. Bạn có thể tham khảo bài viết "TV hay không TV" TGVT số tháng 10/2005, trang 126 để có thêm thông tin về việc xem TV trên máy tính.

    Thiết bị thu nhận tín hiệu TV lắp trong được gọi ngắn gọn là TV Tuner Card hoặc TV Card (từ đây gọi là card TV). Hiện nay nhiều card TV được bổ sung thêm tính năng thu sóng radio FM. Trên thị trường hiện nay có rất nhiều loại card TV (hoặc card có tích hợp tính năng TV) với vô số các nhãn hiệu. Tuy nhiên, trên thực tế, gần như tất cả các card TV này đều dùng chipset thuộc một trong 3 loại sau: BT8x8, SAA713x, CX2388x.

     

    Hình 1: Card TV và chipset BT878

    Trong môi trường Windows, bạn không cần quan tâm tới tên mã của chipset vì các hãng sản xuất card TV đã tối ưu hóa trình điều khiển (driver) và viết sẵn phần mềm cài đặt cho card TV của họ. Tuy nhiên, trong môi trường Linux, bạn không (hoặc chưa) có được sự thuận tiện này. Đây là lí do bạn cần biết card TV của mình được tích hợp chipset nào.

    Để biết đang sở hữu card TV mang chipset gì, bạn có thể gõ lệnh lspci từ dấu nhắc của dòng lệnh. Nếu chipset là BT8x8, bạn có thể nhận được những thông tin đại loại như sau:

    0000:02:0a.0 Multimedia video controller: Brooktree Corporation BT878 Video

    Capture (rev 02)

    0000:02:0a.1 Multimedia controller: Brooktree Corporation BT878 Audio Capture (rev 02)

    Hãng sản xuất chipset BT8x8 hiện nay là Conexant (trước đây là Brooktree, do đó có tên là BT). Trong nhân của HĐH Linux, chipset này do trình điều khiển bttv kiểm soát. Các phiên bản của dòng chipset này thường có các tên như BT848, BT848A, BT849, BT878 và BT879... Về chipset SAA713x, bạn thường gặp 2 phiên bản là SAA7130 và SAA7134. Chipset này do hãng Phillips sản xuất và trình điều khiển saa1734 trong Linux có trách nhiệm quản lí chipset này. Loại chipset thứ 3 là CX2388x cũng do hãng Conexant sản xuất. Thực chất đây là thế hệ tiếp theo của dòng chipset BT8x8 (cụ thể là BT878).

    Trong 3 dòng chipset trên, BT8x8 là cơ bản và phổ biến nhất. Hầu hết các nhà sản xuất card TV hiện nay đều sử dụng chipset của hãng Conexant. Vì vậy, trong bài viết này, mọi hướng dẫn và ví dụ của chúng tôi đều dựa trên chipset BT8x8 của Conexant. Cụ thể, tên của card TV là AVerTV GO Series, và chipset là BT878. Bạn nên yên tâm nếu card TV của mình sử dụng chipset CX2388x hoặc SAA713x vì các bước cấu hình hầu như giống với chipset BT8x8.

    Trình điều khiển cho các card TV sử dụng chipset BT8x8 đã có sẵn trong nhân của Linux kể từ phiên bản 2.2.0. Nghĩa là về mặt lí thuyết, nếu bạn chạy một HĐH Linux có phiên bản ra đời sau ngày 25/1/1999 (ngày phát hành nhân 2.2.0) thì bạn không cần phải quan tâm tới việc cài đặt trình điều khiển cho chipset BT8x8 nữa. Tuy nhiên, nếu vì một lí do nào đó mà trình điều khiển cho BT8x8 không được nạp sẵn khi khởi động Linux thì bạn phải khởi động nó bằng tay thông qua lệnh modprobe. Cụ thể, với tư cách người dùng root, từ dấu nhắc dòng lệnh bạn gõ modprobe bttv. Nếu vẫn không được thì bạn phải cài lại trình điều khiển BTTV - phiên bản mới nhất có tại http://linux.bytesex.org/v4l2/bttv.html; hoặc cài lại (nâng cấp) nhân của Linux.

    2. XEM TV TRÊN HĐH LINUX

    Như chúng ta đều biết, Linux là một tên chung của một họ HĐH mã nguồn mở. Phần lõi của HĐH có thể giống nhau nhưng biểu hiện bên ngoài lại khác nhau. Do vậy, việc cấu hình (cả hệ thống và phần mềm) để xem TV trên các HĐH Linux không hoàn toàn giống nhau. Dưới đây, chúng tôi sẽ đề cập tới việc cấu hình để xem TV trên 3 HĐH họ Linux là SUSE 9.3, Mandrake 10 và Fedora Core 3.

    Trước khi thực hiện các bước cấu hình, bạn phải đảm bảo là mình biết những thông tin cơ sở dưới đây (ngoại trừ trường hợp bạn là chuyên gia về Linux):
    - Trong Linux, có sự phân biệt chữ hoa chữ thường khi gõ các lệnh.

    - Khởi động chế độ đồ họa của Linux: gõ lệnh startx từ dấu nhắc của dòng lệnh. Hiện nay chế độ đồ họa thường là mặc định nên có thể bạn không phải gõ lệnh trên.

    - Lấy quyền người dùng root: gõ lệnh su và nhập mật khẩu gốc.

    - Mở một cửa sổ terminal: có nhiều cách nhưng dễ dàng nhất là mở từ menu chương trình. Terminal trong Linux cũng gần giống Command Prompt trong Windows.

    - Mở một trình soạn thảo đơn giản từ dòng lệnh: có thể dùng mc và thao tác như với NC trong DOS (gõ F4). Cũng có thể sử dụng VIM, với cú pháp vi [tên file].

    - Di chuyển giữa các thư mục: sử dụng lệnh cd như trong DOS.

    - Một số lệnh khởi động các trình soạn thảo đơn giản: [vi], [emacs], [gedit] (trong GNOME), [kwrite] (trong KDE).

    - Muốn biết thêm thông tin về một chương trình: từ dòng lệnh gõ man [tên chương trình] hoặc [tên chương trình] --help
    Ngoài ra, chúng tôi quy ước dùng dấu móc vuông [ ] để tránh nhầm lẫn. Giá trị đúng là giá trị ở trong dấu móc vuông.

    2.1 Đối với SUSE 9.3

    Nếu bạn cài mới HĐH, thì card TV sẽ được nhận ra trong quá trình cài đặt. Và HĐH sẽ cài đặt thêm các thành phần cơ bản để người dùng có thể xem được TV (như phần mềm xem TV, các thư viện video...). Nếu bạn lắp card TV vào máy tính của mình sau khi cài HĐH thì ở lần khởi động tiếp theo HĐH sẽ nhận ra card TV. Trong trường hợp này, bạn phải tự cài các phần bổ sung khi có yêu cầu. Nếu may mắn thì bạn sẽ có đầy đủ các thông tin về chipset và tên nhà sản suất card TV. Nhưng thông thường SUSE chỉ nhận ra card TV thông qua tên mã của chipset. Trong trường hợp của chúng tôi, SUSE 9.3 nhận ra card TV là BT878 nhưng không nhận ra tên nhà sản suất.

    Nhưng điều này vẫn chưa đảm bảo bạn đã có thể xem được TV. Giả sử, bạn đăng nhập vào môi trường KDE (các ví dụ dưới đây đều ở trong môi trường này), để kiểm tra xem SUSE 9.3 đã sẵn sàng cho bạn xem TV chưa, bạn thử mở một chương trình cho phép xem TV nào đó trong Multimedia – TV từ menu chương trình. Nếu mọi việc xảy ra không như mong đợi thì bạn lần lượt tiến hành các bước sau:

    Hình 2: Cài đặt kernel-source trong SUSE 9.3

     

    Bước 1

    Vào YaST từ menu chương trình (tương tự Control Panel của Windows). Trong YaST, bạn chọn Software # Install and Remove Software, và tiến hành cài bổ sung phần kernel-source cho SUSE 9.3 (xem Hình 2).

    Sau khi cài đặt mã nguồn của nhân HĐH, mọi thông tin về card TV có chipset BT8x8 sẽ có tại địa chỉ [/usr/src/linux-2.6.11.4-20a/Documentation/video4linux] (không có dấu [ ]). Bạn có thể tham khảo thông tin về card TV trong các file CARDLIST.bttv và CARDLIST.tuner.

    Bước 2

    Cách 1

     

             Hình 3: Cấu hình card TV BT878 trong SUSE 9.3

    Vào YaST # Hardware # card TV để cấu hình card TV. Trong cửa sổ cấu hình card TV, bạn chọn [Change... # Add]. Nếu tên card TV của bạn được liệt kê dưới mục Vendors và Cards thì bạn chỉ việc chọn chúng. Nhưng khả năng này rất khó xảy ra, nên bạn phải chọn một nhà sản suất và loại card khác thay thế. Với card TV mang chipset BT878 của mình, chúng tôi chọn Vendor là Hauppauge và card là Hauppauge WinTV PVR. Trong phần [Select tuner], chúng tôi chọn Philips PAL_DK (FI1256 and compatibles).

    Cách 2

    Bạn cũng có thể chọn [Expert Settings...]. Khi đó, bạn chỉ cần quan tâm tới 2 tham số là "card" và "tuner" mà thôi. Với cấu hình như ở Cách 1 thì Card=80 và Tuner=23. Để thiết đặt thông số, bạn chỉ việc điểm sáng dòng card và tuner, nhập con số lựa chọn vào phần Parameter và nhấn Set. Nếu card TV hỗ trợ thu sóng radio FM, bạn có thể đặt tham số cho radio=1.

    Cách 3

    Bạn mở file [/etc/modprobe.conf] và thêm vào file này các dòng sau (không có dấu # phía trước):

    alias char-major-81 bttv

    options bttv radio=1 tuner=23 card=80

    Hình 4: Cấu hình thủ công cho card TV

     

    Vì chế độ bảo vệ file hệ thống nên bạn không thể thay đổi file nếu bạn không có quyền root. Theo chúng tôi, bạn nên đăng nhập lấy quyền root từ dòng lệnh thông qua cửa sổ terminal, rồi từ đó chuyển tới thư mục [/etc] rồi gõ [vi modprobe.conf] để chỉnh sửa (chúng tôi sử dụng mc). Tất nhiên, trước khi thoát khỏi trình biên tập, bạn phải lưu lại các thay đổi với file modprobe.conf. Nếu mới làm quen với Linux thì cách này không hoàn toàn phù hợp với bạn.

    Đối với cách 2 và cách 3, bạn cần tham khảo thêm các file CARDLIST.bttv và CARDLIST.tuner (nói trên) để biết thêm chi tiết, hoặc nếu tham số cho "card" và "tuner" mà chúng tôi gợi ý không phù hợp với trường hợp của bạn.

    Bước 3

     

                    Hình 5: Bổ sung các hỗ trợ video

    Ở bước này, bạn phải cài đặt các hỗ trợ video cho HĐH. Bạn vào YaST # Software và gõ [v4l] trong phần [Search]. Khi đó, khung bên phải xuất hiện [v4l-conf] và [v4l-tools]. Bạn chọn cả 2 để cài đặt nếu như chúng chưa đuợc cài đặt (chưa được đánh dấu kiểm).

    Bước 4

    Đóng tất cả các chương trình và khởi động lại máy tính. Sau khi HĐH đã khởi động lại, bạn phải tiến hành dò kênh TV. Nếu bạn vào [YaST # Hardware # TV Card...] để dò kênh thì rất có thể gặp thông báo lỗi "The kernel module for TV support could not be loaded". Do vậy, theo chúng tôi, bạn nên dò kênh từ dòng lệnh: bạn vào System # Terminal # Konsole (hoặc một terminal khác). Từ dấu nhắc dòng lệnh, bạn gõ [scantv], chọn TV norm là 0 (=PAL) và frequency table là 5 (=europe-west).

    Sau khi dò kênh xong, bạn có thể xem TV ngay bằng trình xawtv hoặc MoTV (dùng phím mũi tên lên xuống trên bàn phím để chuyển kênh). Cần lưu ý, việc chọn kênh cũng được các phần mềm cho phép xem TV như motv hay kdetv hỗ trợ ngay trong chính giao diện của chương trình.

    2.2 Đối với Mandrake 10

    Hình 6: Xem VTV3 bằng MoTV

     

    Mặc dù Mandrake 10 cũng nhận ra card TV của chúng tôi là BT878 và cài đặt trình tvtime để sẵn sàng cho việc xem TV nhưng vẫn chưa thể xem được. Phần mềm tvtime không tìm thấy tín hiệu TV nào cho dù đã được cấu hình lại theo đúng các thông số yêu cầu (để xem TV tại Việt Nam). Để có thể xem được TV trên Mandrake 10, bạn lần lượt làm theo các bước sau:

    Bước 1

    Ở bước này, chúng ta sẽ tiến hành cài trình xawtv và mã nguồn kernel-source. xawtv là một phần mềm cho phép xem TV mang tính cơ sở trong hầu hết các bản Linux. Khi cài đặt, chương trình sẽ cài đầy đủ các thành phần cần thiết (như Video4Linux) để nguời dùng có thể xem TV thoải mái. Lí do của việc cài kernel-source đã được chúng tôi trình bày bên trên.

     

    Hình 7: Cài đặt xawtv và các thành phần liên quan

    Để cài xawtv, bạn làm như sau: Vào menu chương trình, chọn System # Configuration # Configure your computer và chọn cài đặt phần mềm. Trong ô [Search], bạn gõ xawtv để liệt kê tất cả các thành phần liên quan tới chương trình. Theo chúng tôi, bạn nên chọn cài đặt tất cả các thành phần được liệt kê.

    Việc cài đặt cài kernel-source cũng cơ bản tiến hành như đối với xawtv, có điều bạn chọn cài kernel-source-2.6.3-7mdk

    Bước 2

    Bạn vẫn chưa thể xem TV cho dù đã cài xawtv và mã nguồn của kernel. Bước tiếp theo bạn cần nạp trình điều khiển cho card TV. Bạn làm như sau: vào menu chương trình, chọn System # Terminals, và mở một terminal (bạn cũng có thể chọn mở từ biểu tượng terminal trên thanh công cụ). Từ dòng lệnh, bạn đăng nhập lấy quyền root. Sau đó bạn gõ modprobe bttv để khởi động trình điều khiển card TV.

    Cách 1

    Hình 8: Cấu hình cho card TV

     

    Tiếp theo, từ menu chương trình, bạn chọn System # Configuration # Hardware # Hardware # TVCard # BT878 # Configure module. Tương tự như ở SUSE, bạn nhập tham số cho card là 80 và tuner là 23. Nếu card TV hỗ trợ thu sóng radio FM, bạn đặt tham số cho radio là 1. Cuối cùng, lưu và thoát ra khỏi các chương tình rồi khởi động lại HĐH.

    Cách 2

    Bạn cấu hình lại file [/etc/modprobe.conf] bằng thủ công. Các bước thực hiện tương tự như cách 3 trong SUSE. Sau khi sửa đổi file modprobe.conf xong, bạn cần khởi động lại HĐH.

    Bước 3

     

    Hình 9: Xem VTV2 bằng xawtv

    Sau khi HĐH khởi động lại, bạn mở terminal, lấy quyền root, rồi gõ modprobe bttv để khởi động trình điều khiển cho card TV. Sau đó, cũng từ dấu nhắc dòng lệnh, bạn gõ scantv để dò kênh. Các bước thực hiện tiếp theo tương tự như dò kênh từ dòng lệnh trong SUSE. Sau khi chương trình hoàn tất quá trình dò kênh, bạn có thể mở trình xawtv để xem TV. Vì tvtime và xawtv không chia sẻ các thông số về kênh TV nên nếu muốn xem bằng tvtime, thì bạn có 2 phương án: 1) Mở tvtime và cấu hình lại chương trình (theo các thông số phù hợp với chuẩn truyền hình của Việt Nam); 2) Dò kênh bằng cách khác. Cụ thể, bạn làm như sau: từ menu chương trình, bạn chọn System # Configuration # Hardware # TV Card. Sau đó, chọn PAL cho TV norm, West Europe cho Area. Việc dò kênh sẽ bắt đầu ngay sau khi bạn nhấn OK. Bạn có thể mở tvtime để xem TV sau khi quá trình dò kênh hoàn tất.

    Cần lưu ý là mặc dù các thông số cấu hình đều được HĐH lưu lại nhưng không hiểu tại sao trình điều khiển bttv lại không được nạp khi Mandrake 10 khởi động. Do vậy, bạn phải lặp lại lệnh modprobe bttv mỗi khi HĐH khởi động. Chúng tôi chưa có điều kiện kiểm nghiệm nhưng hi vọng ở các bản Mandrake sau, điều này sẽ được khắc phục.

    2.3 Đối với Fedora Core 3

    Cũng giống như trong SUSE 9.3 và Mandrake 10, Fedora Core 3 cũng nhận ra card TV của chúng tôi là BT878. Mặc dù vậy, không một phần mềm xem TV nào được cài đặt cho dù HĐH được cài sạch từ đầu. Trên thực tế, trong bộ đĩa cài đặt Fedora Core 3 không có phần mềm xawtv mà chỉ có tvtime.

    Nói chung, các thao tác để có thể xem được TV trên Fedora Core 3 khó hơn so với trên SUSE 9.3 và Mandrake 10. Có lẽ vì là hậu duệ của Red Hat nên Fedora Core 3 cũng thừa hưởng tính bảo mật cao. HĐH này không trực tiếp cung cấp cho người dùng những công cụ trực quan để can thiệp vào hệ thống. Do vậy, bạn không thể cấu hình cho card TV thông qua các công cụ cấu hình hệ thống.

    Trước hết, HĐH này không cung cấp các tài liệu về trình điều khiển bttv trong mã nguồn của kernel. Do vậy, bạn không thể tham khảo các thông tin cấu hình cho card TV trong [/usr/src/linux-2.6.xxx/Documentation/video4linux]. Theo chúng tôi, nếu bạn muốn có các thông số khác với hướng dẫn của chúng tôi dưới đây, hoặc card TV có những đặc điểm riêng, hoặc không phải là BT878, bạn có thể tham khảo các thông tin về trình điều khiển bttv tại http://linux.bytesex.org/v4l2/bttv.html hoặc các trang HOWTO (hướng dẫn) như http://www.tldp.org/HOWTO/BTTV/.

    Để có thể xem được TV trên Fedora Core 3, bạn cần tiến hành theo 3 bước sau (các hướng dẫn được thực hiện trong môi trường KDE):

    Bước 1: Cài đặt tvtime và xawtv

    Việc cài đặt tvtime rất đơn giản. Bạn vào Add and Remove Software # Multimedia và chọn cài đặt tvtime.

    Mặc dù có thể xem TV bằng trình tvtime, nhưng theo chúng tôi bạn nên cài đặt phần mềm xawtv vì đây là phần mềm xem TV cơ sở trong môi trường Linux. Ngoài ra, xawtv còn cung cấp các thư viện điều khiển video trong linux (Video4Linux) cũng như các công cụ hữu ích phục vụ cho việc cấu hình phần mềm cho các chương trình xem TV.

    Vì xawtv không có trên đĩa cài đặt chuẩn của Fedora Core 3 nên bạn phải tìm nó ở một nguồn khác. Có ít nhất 2 cách để cài đặt phần mềm xawtv trên Fedora Core 3.Cách thứ nhất, bạn có thể tìm thấy phần mềm này trên đĩa 2 của Red Hat 8.x trở lên, việc cài đặt nó vào Fedora Core 3 cũng đơn giản như thao tác cài đặt phần mềm trên Windows. Thông thường, việc cài đặt xawtv theo cách này luôn thành công mặc dù bạn có thể nhận được một số cảnh báo nào đó trong quá trình cài đặt. Cách này đơn giản nhưng không phải lúc nào đĩa cài đặt Red Hat cũng có sẵn và bạn không có được những tính năng mới hoặc cải tiến của xawtv.

    Hình 10: Thông báo lỗi khi cài bản xawtv mới nhất

     

    Đối với cách thứ 2, bạn cần truy cập Internet để tải xuống phiên bản mới nhất của phần mềm xawtv. Để đơn giản hơn, bạn nên dùng bản đóng gói RPM thay vì các bản dưới dạng mã nguồn hoặc nén dưới dạng TAR. Bạn có thể tải xawtv cho Fedor Core 3 từ ftp://rpmfind.net/linux/dag/fedora/3/en/i386/dag/RPMS/xawtv-3.94-2.1.fc3.rf.i386.rpm. Sau khi tải xawtv xuống, bạn lưu phần mềm vào một thư mục nào đó (chẳng hạn trên Desktop với tên xawtv.rpm) Bạn mở một terminal, đăng nhập lấy quyền root và chuyển tới thư mục chứa bản xawtv vừa tải xuống. Tiếp theo, bạn gõ lệnh cài đặt [rpm –ivU xawtv.rpm].

    Tuy nhiên, việc cài đặt xawtv trên Fedora Core 3 theo cách này không phải lúc nào cũng thành công. Bản xawtv mới nhất luôn được cập nhật hoặc bổ sung các công cụ mới phục vụ cho việc xem TV. Trong quá trình cài đặt, bạn có thể nhận được các thông báo về việc thiếu một hoặc nhiều thư viện liên quan và hậu quả là quá trình cài đặt sẽ thất bại. Theo chúng tôi, để khắc phục tình trạng này, bạn cần ghi lại tên của các thư viện mà xawtv cần, sau đó lần lượt cài đặt chúng trước khi bắt đầu lại quá trình cài xawtv.

    Cách thứ hai tỏ ra khá rườm rà và có phần phức tạp, nhưng nếu thành công bạn sẽ khai thác được những tính năng mới không chỉ của xawtv mà còn của nhiều thành phần bổ sung khác (như phần mềm MoTV).

     

           Hình 11: Biên tập lại modprobe.conf bằng mc

    Bước 2: Biên tập lại file [modprobe.conf]

    File modprobe.conf là file cấu hình mà tất cả các phần mềm cho phép xem TV đều sử dụng. Để biên tập lại file này, bạn làm như sau:

    Mở một terminal, đăng nhập lấy quyền root, rồi dùng lệnh cd để chuyển tới [/etc]. Tại thư mục [/etc], bạn tìm và mở file modprobe.conf bằng một chương trình nào đó như [vi] chẳng hạn (gõ vi modprobe.conf – chúng tôi dùng [mc]). Bạn thêm 2 dòng sau vào file này:

    alias char-major-81 bttv

    Hình 12: Xem

     

    options radio=1 card=80 tuner=23

    Tiếp theo, bạn lưu lại các thay đổi và thoát khỏi trình biên tập. Tại dấu nhắc dòng lệnh, bạn gõ rmmod bttv để gỡ trình điều khiển bttv với các thiết lập cũ. Ngay sau đó, bạn lại gõ modprobe bttv để nạp lại trình điều khiển bttv với các thiết lập mới. Thay vì gõ các lệnh trên, bạn cũng có thể khởi động lại hệ thống để các thiết lập mới có hiệu lực.

    Bước 3: Cấu hình cho phần mềm

     

    Hình 13: Xem VTV3 bằng tvtime

    Trước khi có thể xem TV, bạn cần thực hiện thao tác dò kênh. Cách dò kênh từ dòng lệnh với các tham số về chuẩn truyền hình và khu vực giống hệt như trong SUSE và Mandrake. Lưu ý, nếu gặp lỗi khi chạy lệnh [scantv], bạn có thể khởi động xawtv trước rồi mới chạy lệnh [scantv].

    Sau khi dò kênh thành công, bạn có thể dùng xawtv hoặc MoTV để xem các kênh truyền hình. Riêng đối với tvtime, bạn phải cấu hình trong giao diện của chương trình mới xem TV được.


    3. MỘT SỐ PHẦN MỀM XEM TV TRONG MÔI TRƯỜNG LINUX

    Xawtv

    Hình 14: Cấu hình cho xawtv

     

    Như đã thấy ở trên, xawtv là phần mềm cơ sở cho phép xem TV trong môi trường Linux. Trên thực tế, xawtv là một gói phần mềm, trong đó có nhiều chương trình hỗ trợ xem TV mà trình xawtv là trung tâm. Việc khởi động phần mềm này có thể được tiến hành từ menu chương trình hoặc từ dòng lệnh (gõ xawtv). Bạn có thể tham khảo các thông tin mới nhất về xawtv tại http://linux.bytesex.org/xawtv/.

    Nói chung, xawtv cung cấp cho người dùng hầu hết các tính năng cơ bản mà một chương trình xem TV trên máy tính phải có. Bạn có thể cấu hình và khai thác các tính năng của xawtv bằng cách nhấn chuột phải vào cửa sổ chương trình. Tại đây, xawtv cho phép bạn thay đổi nhiều thông số chương trình như độ sáng, độ tương phản, biên tập lại kênh... (xem Hình 14).

     

    Hình 15: Dò kênh bằng lệnh scantv

    Bạn có thể lưu ảnh tĩnh hoặc ghi lại chương trình TV, thậm chí thay đổi cả nguồn bắt hình video (sang đầu VCR chẳng hạn). Tuy nhiên, điểm yếu của phần mềm xawtv là không tích hợp tính năng dò kênh trong giao diện chương trình. Để dò kênh cho xawtv, bạn phải chạy lệnh [scantv] từ dòng lệnh (chỉ phải dò kênh khi chương trình chạy lần đầu).

    Có thể thấy, xawtv là một giải pháp khá toàn diện, phục vụ tốt không chỉ cho nhu cầu xem mà cả nhu cầu ghi lại chương trình truyền hình.

    MoTV

    MoTV là một trong những chương trình được nhiều người ưa thích vì tính dễ sử dụng và giao diện sáng sủa, trực quan. Thực ra, MoTV không phải là một chương trình độc lập mà là một phần của gói phần mềm xawtv. Chính xác hơn, nó là một chương trình chạy trên nền tảng các module của xawtv. Do vậy, bạn chỉ có chương trình này sau khi cài đặt bản xawtv mới nhất.

    MoTV có thể được khởi động từ dòng lệnh thông qua lệnh [motv] hoặc từ menu chương trình ở mục Multimedia. Giống như xawtv, MoTV cho phép người dùng lựa chọn video từ nhiều nguồn khác nhau như card TV, cổng composite, cổng USB hoặc từ bất kể nguồn video nào gắn với máy tính. Sau khi chương trình khởi động, bạn nhấn chuột phải vào cửa sổ chương trình để hiển thị menu điều khiển.

         Hình 16: MoTV hiển thị hình ảnh thu nhỏ của các kênh

     

    Khác với xawtv, bạn có thể dò kênh TV ngay trong giao diện chương trình một cách dễ dàng. Tất nhiên, trước khi dò kênh, bạn cần phải thiết lập chính xác các tham số về nguồn video, hệ truyền hình, tần số đài phát sao cho phù hợp với các tiêu chuẩn của truyền hình tại Việt Nam. Cụ thể, trong mục Option bạn chọn TV tuner cho Video Source, PAL cho TV norm (hệ truyền hình) và West Europe cho Frequency Table (khu vực).

    Quá trình dò kênh thường mất vài ba phút và MoTV có thể hiển thị hình ảnh thu nhỏ của các kênh mà chương trình dò thấy. Cần lưu ý là MoTV có thể sử dụng kết quả dò kênh của xawtv và ngược lại nhưng chỉ khi MoTV tự dò kênh thì hình ảnh thu nhỏ của các kênh mới được hiển thị. Sau khi đã thiết lập các thông số cần thiết, bạn nên chọn [Save Configuration] ở mục [Options] để lưu lại kết quả cấu hình cho chương trình.

    Giống như xawtv, bạn hoàn toàn có thể tối ưu hóa hình ảnh theo ý muốn bằng cách thay đổi các thông số về độ sáng, độ tương phản, cấp độ màu..., trong mục Options. Bạn cũng có thể chụp lưu ảnh tĩnh dưới nhiều định dạng ảnh phổ biến. Tính năng ghi lại chương trình TV của MoTV cung cấp nhiều lựa chọn hơn so với tính năng tương tự của xawtv.

    Kdetv

     

    Hình 17: Xem VTV1 bằng kdetv

    Kdetv (trước đây có tên là KwinTV) là một chương trình xem TV trên Linux chạy trong môi trường KDE; có lẽ vì vậy mà kdetv cho hình ảnh rất đẹp. Cũng tương tự như MoTV, kdetv cung cấp một giao diện rất trực quan, giúp người sử dụng dễ dàng cấu hình cho chương trình.

    Bạn có thể tìm thấy bản kdetv mới nhất tại địa chỉ http://www.kdetv.org/download.html.

    Các thao tác cấu hình đều được thực hiện ngay trong giao diện trương trình tương tự như trong MoTV. Chỉ có đôi chút khác biệt ở tên gọi (như Option hay Settings). Tuy nhiên, kdetv chỉ thuần túy là một chương trình xem TV nên bạn không thể ghi lại các chương trình TV ưa thích. Ngoài ra, kdetv cũng không cho phép lựa chọn các nguồn video khác ngoài tín hiệu từ card TV.

    Hình 18: Dò kênh trong kdetv

     

    Việc dò kênh của kdetv khá thuận tiện vì chương trình có nhiều cơ chế dò kênh. Nếu bạn đã dò kênh bằng MoTV thì kdetv có thể tìm và nhập thông số dò kênh của MoTV vào cơ sở dữ liệu của chương trình.

    Phần mềm này cho phép bạn cấu hình để sử dụng điều khiển từ xa nhưng việc này khá phức tạp.

    Tvtime

    Tvtime là một chương trình xem TV trên Linux được rất nhiều người ưa chuộng. Bạn có thể tìm thấy bản tvtime mới nhất tại http://tvtime.sourceforge.net. Tvtime có hầu hết các tính năng mà một chương trình xem TV trên máy tính cần có. Phần mềm này nổi trội ở khả năng xử lí hình ảnh video dòng (streaming).

     

    Hình 19: Xem VTV4 bằng tvtime

    Tương tự như các phần mềm nêu trên, tvtime có thể được khởi động từ cả menu chương trình và dòng lệnh (gõ tvtime). Có thể nói chất lượng hình ảnh của tvtime là tốt nhất trong số các chương trình đề cập ở trên. Hình ảnh hiển thị mượt mà, trung thực, rõ nét. Tương tự như các chương trình khác, các thao tác cấu hình của tvtime đều được thực hiện từ giao diện chương trình. Phần mềm này còn cho phép xem TV cũng như các nguồn video khác ở chế độ màn hình rộng với chất lượng hình ảnh tuyệt vời (tất nhiên nguồn TV hoặc video phải hỗ trợ màn hình rộng).

    Thuần túy là một chương trình xem TV, tvtime không hỗ trợ việc ghi tín hiệu TV trực tiếp lên ổ cứng. Bên cạnh đó, việc cấu hình tvtime thông qua một menu thả xuống hơi rối mắt đối với người dùng thông thường.

    Dù còn có những điểm chưa hoàn hảo nhưng tvtime là một trong những chương trình thuộc dạng "phải có”. Nếu bạn muốn xem TV trên Linux với chất lượng hình ảnh tối ưu.

    Các phần mềm khác

           Hình 20: Xem VTV2 bằng zapping

     

    Như các bạn đều biết, các phần mềm thuộc cộng đồng mã nguồn mở liên tục được phát triển. Chẳng hạn, các phần mềm mới nhất được nhắc tới ở đây có thể đã lỗi thời ngay cả khi chúng ta vừa kịp nhắc tới chúng lần đầu tiên.

    + Zapping

    Được thiết lập như một phần mềm cho phép xem TV trong môi trường GNOME, Zapping vẫn cho phép xem TV trong môi trường KDE. Phần mềm này có trong SUSE 9.3 và Mandrake 10. Dù đuợc cài đặt, Zapping không xuất hiện ở menu chương trình. Chúng tôi phải khởi động Zapping từ dòng lệnh hoặc từ hộp thoại "Run Application" của menu chương trình.

    Công bằng mà nói, Zapping cho chất lượng hình ảnh TV chẳng kém gì những chương trình được nhắc tới ở trên. Giao diện chương trình đơn giản, dễ dùng.

     

    Hình 21: Xem VTV1 trên Gnomemeeting

    + GnomeMeeting

    Thực ra, GnomeMeeting không phải là chương trình chuyên để xem TV trên Linux. Phần mềm này có chức năng tương tự như Yahoo Mesenger, hỗ trợ chat là chủ yếu. Tuy nhiên, GnomeMeeting còn hỗ trợ hội thảo trực tuyến (audio và video) và bắt hình TV.

    Hình ảnh của GnomeMeeting khá tốt vì được hiển thị trong một cửa sổ nhỏ. GnomeMeeting rất thích hợp trong trường hợp bạn vừa xem TV vừa làm một việc khác. Lưu ý, GnomeMeeting không thể tự dò và chuyển kênh - bạn phải thực hiện các thao tác này từ một chương trình khác (ví dụ kdetv).

    + Streamer

    Hình 22: Dùng streamer để ghi lại một đoạn video

     

    Streamer không phải là một chương trình xem TV. Nhiệm vụ chính của phần mềm này là ghi lại các tín hiệu video trực tiếp và lưu lại dưới dạng ảnh tĩnh (jpg, pgn...) hoặc đoạn video (mov, avi...). streamer cực kì đắc dụng trong trường hợp bạn sử dụng một chương trình chỉ cho xem mà không cho ghi lại tín hiệu TV (ví dụ tvtime). Cụ thể, rất nhiều hình minh họa trong bài viết này được ghi lại bằng streamer. Ví dụ, để ghi lại đoạn chương trình yêu thích với thời gian 30 giây, kích cỡ khung hình 352x240, 24 hình một giây, tên file là movie.avi, định dạng là mp4, và âm thanh stereo, bạn gõ streamer từ dòng lệnh với các tham số như ở Hình 21 trong khi chương trình xem TV đang chạy. Để biết thêm thông tin chi tiết, bạn gõ lệnh man streamer hoặc streamer --help từ dòng lệnh.

    + MythTV

     

    Hình 23: Giao diện chương trình của MythTV

    Có lẽ đây là một trong những chương trình "nổi đình nổi đám" nhất trong thế giới của các phần mềm cho phép xem và ghi lại chương trình TV hoạt động trên nền Linux. MythTV không những được nhiều người ca ngợi như một giải pháp hoàn chỉnh thu video cá nhân (PVR - Personal Video Recording) mà còn rất mạnh ở khả năng xử lí video dòng trực tiếp (streaming video).

    Hiện nay việc cài đặt phần mềm này còn khá phức tạp, và rõ ràng không dành cho người mới làm quen với Linux. Theo thông tin chúng tôi biết, MythTV chưa là một phần của các bản Linux. Để có được phần mềm này, bạn có thể có thể tải xuống từ http://www.mythtv.org.

    + Radio

    Hình 23: Nghe chương trình phát thanh trên sóng FM bằng phần mềm radio

     

    Xin lưu ý radio không phải là phần mềm xem TV mà là phần mềm nghe các chương trình phát thanh trên sóng FM. Phần mềm này sẽ làm bạn hài lòng khi vừa làm việc trên máy tính vừa nghe "đọc truyện đêm khuya" trên sóng phát thanh. Thông thường, bạn phải tự cài radio từ đĩa nguồn vì phần mềm này không được cài mặc định.

    Bạn khởi động radio từ dòng lệnh với quyền người dùng root. Ở lần khởi động đầu tiên, bạn phải thực hiện thao tác dò các đài phát thanh (tần số phát thanh). Cụ thể, với tư cách người dùng root, từ dòng lệnh bạn gõ [radio –S] (xem Hình 23). Trong trường hợp của chúng tôi, phần mềm Radio dò rất chính xác các chương trình phát thanh trên sóng FM ở khu vực Hà Nội. Tuy nhiên, chất lượng âm thanh hoàn toàn phụ thuộc vào vị trí đặt anten thu sóng FM. Do vậy, bạn phải tự tay di chuyển anten FM tới vị trí tối ưu cho chất lượng âm thanh.

    KẾT LUẬN

    Trên đây, chúng tôi đã giới thiệu cách thức cấu hình 3 HĐH Linux khá phổ biến để sẵn sàng cho việc xem TV với những phần mềm chuyên dụng sẵn có nhằm giúp các bạn có thêm thông tin trong việc lựa chọn những chương trình phù hợp với điều kiện của mình.

    Hi vọng bài viết này không những giúp bạn có thể thoải mái xem TV trong môi trường Linux mà còn phần nào khuyến khích bạn tìm hiểu sâu hơn về Linux.

    Nguyễn Việt Khoa
    ĐH Bách khoa Hà Nội
    Email:
    vietkhoabk@hotmail.com
    ---------------------------------------------
    TÀI LIỆU THAM KHẢO
    www.yolinux.com/TUTORIALS/LinuxTutorialVideo.html
    Nhập môn hệ điều hành Linux. NXB KH & KT.

    www.linuxjournal.com/article/8116
    www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/pdf/BTTV.pdf

    ID: A0604_128