Câu hỏi Chuyển mã sang aac trên Ubuntu 14.04 bằng vlc


Tôi đang cố gắng để dòng một dòng dvb trong VLC nhưng chuyển mã âm thanh sang định dạng aac tuy nhiên nó không thể tìm thấy các bộ mã hóa. Làm thế nào để cài đặt nó?

VLC media player 2.1.4 Rincewind (revision 2.1.4-0-g2a072be)                    
[0x2535b58] main interface error: no suitable interface module                  
[0x2470118] main libvlc error: interface "globalhotkeys,none" initialization failed                                                                             
[0x2535b58] dbus interface error: Failed to connect to the D-Bus session daemon:
Unable to autolaunch a dbus-daemon without a $DISPLAY for X11                  
[0x2535b58] main interface error: no suitable interface module                  
[0x2470118] main libvlc error: interface "dbus,none" initialization failed      
[0x2470118] main libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface. 
[0x2535b58] qt4 interface error: Could not connect to X server 
[0x2535b58] skins2 interface error: cannot initialize OSFactory 
[0x2535b58] [cli] lua interface: Listening on host "*console". 
VLC media player 2.1.4 Rincewind
Command Line Interface initialized. Type `help' for help.
> [0x7f00c800bcf8] dtv access error: 514000 Hz carrier frequency is too low. 
[0x7f00c800bcf8] dtv access: Assuming 514000000 Hz frequency instead. 
[0x7f00c800bcf8] dtv access error: cannot enumerate frontend systems: Invalid argument 
[0x7f00cc001138] avcodec encoder error: cannot open encoder 
[0x7f00cc001138] main encoder error: Streaming / Transcoding failed 
[0x7f00cc001138] main encoder error: VLC could not open the encoder. 
[0x7f00c80097c8] stream_out_transcode stream out error: cannot find audio encoder (module:any fourcc:mp4a). Take a look few lines earlier to see possible reason. 
[0x7f00c80097c8] stream_out_transcode stream out error: cannot create audio chain 
[0x7f00c80a5438] main decoder error: cannot create packetizer output (mpga) 
[0x7f00c80105b8] ts demux error: libdvbpsi (misc PSI): Bad CRC_32 table 0x73 !!!  

Chỉnh sửa để thêm lệnh tôi đang chạy

cvlc --ttl 12 --ts-es-id-pid --program=8261 dvb:// --dvb-adapter=3 \
--dvb-frequency=514000 --dvb-bandwidth=8 --sout #transcode{width=720,vcodec=h264,
venc=x264{aud,profile=baseline,level=30,keyint=30,ref=1},
acodec=mp4a}:std{access=livehttp{seglen=10,delsegs=true,
numsegs=10,index=/web/main/streaming/mystream.m3u8,
index-url=http://192.168.1.2/streaming/mystream-########.ts},
mux=ts{use-key-frames},dst=/web/main/streaming/mystream-########.ts}'

Lệnh này là truyền một adapter DVB qua HLS chuyển mã nó sang một định dạng được chấp nhận bởi máy khách. Lệnh hoạt động nhưng sẽ tạo ra các tệp ts không có âm thanh do bộ mã hóa bị thiếu. Nếu tôi chnage bộ mã hóa để "mp3" tôi nhận được một tập tin với âm thanh MP3 nhưng rõ ràng không phải là những gì tôi muốn.


2
2017-08-21 16:35


gốc


Bạn đã chạy lệnh nào? - Volker Siegel
Đã thêm vào câu hỏi. - foxy82


Các câu trả lời:


Bạn thực sự có thể bị thiếu một số codec, bởi vì chúng được tách ra với một số gói thêm trong ubuntu.

Có hai biến thể xung đột của các gói, một thứ -extra trong tên.

Ngoài ra, có những báo cáo cài đặt các gói có thể làm hỏng quản lý gói; Ít nhất tôi đã phải giải quyết xung đột bằng tay một vài lần.

Bạn cần libavcodec54 và libavutil52 hoặc là libavcodec-extra và libavutil-extra-52:
(Tôi nghĩ tôi không tự mình sử dụng các gói này, nhưng tôi đã cài đặt chúng từ lâu rồi, và kết thúc với phiên bản không có -extra trong tên. Tôi nhớ là rất khó, vì vậy đừng mong đợi việc cài đặt chúng chỉ hoạt động trơn tru)

sudo apt-get install libavcodec54 libavutil52

Nếu điều đó không có tác dụng, hãy gỡ cài đặt và thử cách khác.

sudo apt-get install libavcodec-extra libavutil-extra-52

(Trước khi bạn hỏi: Tôi mơ hồ nhớ rằng lý do cho việc đóng gói và sự phụ thuộc lộn xộn không chỉ là do các vấn đề cấp phép, mà còn có một thành phần quan trọng trong chính trị liên dự án).


2
2017-08-22 07:16



Vì vậy, tôi chạy dòng đầu tiên và đã cài đặt chúng. Vì vậy, đã đi để loại bỏ chúng và như là một phần của loại bỏ nó muốn loại bỏ tvheadend, phanh tay và vlc. Bạn có thể đoán đây là một máy chủ phương tiện truyền thông vì vậy tôi không thực sự muốn loại bỏ chúng. Vì vậy, tôi đã cố gắng chỉ cài đặt các tính năng bổ sung - đã hoạt động và bây giờ khi tôi chạy vlc, nó không phàn nàn về codec nhưng tôi nhận được lỗi sau nhiều lần và không có tệp: [libvo_aacenc @ 0x7f5b7800f080] Lỗi nhận gói dữ liệu đầu ra [0x7f5b78001138] bộ mã hóa avcodec lỗi: Sự cố mã hóa .. Vì vậy, vẫn không thực sự hoạt động mặc dù bộ mã hóa hiện được phát hiện. - foxy82
Tôi đoán đây là phụ thuộc sai lầm mà bạn nói có lẽ do ffmpeg vs avconv - foxy82
Uhoh ... vì vậy nó vẫn còn lộn xộn để cài đặt như nó đã được khi tôi đã làm một số như bốn năm trước đây ... Tôi không nhớ các chi tiết - như bạn vừa viết trong khi tôi đang viết này - một phần của mớ hỗn độn là codec được liên kết chặt chẽ với ffmpeg, không thực sự hoàn toàn độc lập thư viện. Kết hợp với ffmpeg so với avconv vấn đề chính trị. - Volker Siegel
Tốt, có ai đó hỏi làm thế nào để dọn dẹp đống lộn xộn khỏi cài đặt libavcodec54 - song song với câu hỏi này: askubuntu.com/questions/475632/… - Volker Siegel
Cảm ơn sự giúp đỡ của bạn - được đánh giá cao! Không may là giải pháp đó dường như không làm gì cho tôi. Đọc danh sách các gói ... Hoàn thành xây dựng cây phụ thuộc Đọc thông tin trạng thái ... Hoàn thành 0 để nâng cấp, 0 để cài đặt mới, 0 để loại bỏ và 3 không nâng cấp. Ít nhất tôi biết một phần nơi cuộc đụng độ là - perharps tôi chỉ cần loại bỏ chúng và sau đó cài đặt lại những thứ khác tôi đang sử dụng. - foxy82


Nếu các triệu chứng trông giống như câu hỏi, nhưng các chi tiết với codec dường như khác nhau, nó có thể là một cấu hình sai lầm của vlc - điều đó dường như xảy ra đôi khi.

Dưới đây là những gì bạn có thể làm:

Đối với tôi, có vẻ như lỗi liên quan đến bộ mã hóa chỉ theo sau các lỗi khác - tại sao bạn lại nghĩ vấn đề đó là bộ mã hóa?

Nó có thể là do bị hỏng vlc cấu hình.

Đối với thử nghiệm đầu tiên, hãy thử

vlc --ignore-config

Bạn có thể di chuyển ra hoặc xóa thư mục cấu hình:

mv -i ~/.config/vlc ~/dot-config-vlc-old

hoặc chỉ cần đặt lại cấu hình với:

vlc --reset-config

0
2017-08-21 18:06



Lý do tôi nghĩ nó là bộ mã hóa là lệnh này chạy ok nhưng tạo ra một tập tin không có âm thanh. Nếu tôi thay đổi bộ mã hóa âm thanh từ "mp4a" thành "mp3", nó hoạt động tốt nhưng rõ ràng là tôi nhận được âm thanh MP3 thay vì AAC. (Lệnh trong nhận xét cho câu hỏi) - foxy82
Có vẻ như bạn đã đúng, hãy thử câu trả lời khác của tôi; Tôi sẽ để cái này riêng biệt ở đây cho độc giả với những triệu chứng tương tự từ những nguyên nhân khác. - Volker Siegel


Ok cuối cùng tôi đã loại bỏ tất cả các gói libavcodec * và libavutil * (máy chủ này đã được nâng cấp nhiều lần để có vẻ như có một số cũ).

Sau đó tôi đã sử dụng hướng dẫn này để xây dựng libfdk-aac / ffmpeg / vlc http://ubuntuforums.org/showthread.php?t=2141949

Tuy nhiên lệnh của tôi không hoạt động trên các chủ vlc master hoặc 2.2 - không có tệp .ts nào được viết. Vì vậy, tôi đã sử dụng 2,1 chi nhánh từ vcc git.


0
2017-08-22 13:51